Solucionado (ver solução)
Solucionado
(ver solução)
12
respostas

Console .log não está imprimindo peso inválido

Por mais que eu escreva o código igualzinho ao do instrutor, o console .log não está imprimindo o peso inválido.

var titulo = document.querySelector(".titulo");
        titulo.textContent = "Aparecida Nutricionista";


var paciente = document.querySelector("#primeiro-paciente");
var tdPeso = paciente.querySelector(".info-peso");

var peso = tdPeso.textContent;

var tdAltura = paciente.querySelector(".info-altura");
var altura = tdAltura.textContent;

var tdImc = paciente.querySelector(".info-imc");

if(peso < 0 || peso > 1000) {
    console.log("Peso inválido");
}
var imc = peso / (altura * altura); // 100/ 2.0 ** 2.00 = 100 / 4 = 25

tdImc.textContent = imc;
12 respostas

Oi, Gabriel, tudo bem?

No html, você está alterando os valores de altura e/ou peso para que a mensagem apareça na tela do console do navegador? No caso, você teria que mudar o valor de peso com id primeiro-paciente para, por exemplo, 30000, que está fora de valor de peso da verificação. Testa e me fala se obteve a mensagem no console.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Oi, Gabriel, tudo bem?

Eu testei o seu código e a mensagem informando sobre o peso inválido é mostrado no console. No seu arquivo index.html tem a id primeiro-paciente definida para que possa capturar os valores e fazer a verificação?

Tem sim. O console.log até imprime o peso, altura e imc. Mas não considera valor inválido.

Eu vou revisar todo o código aqui de novo pra ver o que deu

Está tudo certo, já até testei em outro navegador e dá no mesmo. O js faz o calculo do IMC e me mostra os valores de peso e altura normalmente, mas não faz a leitura de peso invalido. Não entendo...

Olha a ironia, o console lê a altura inválida, mas não lê o peso inválido. Detalhe. Ele mostra altura inválida sem eu ter digitado altura. Daí quando digita altura mostra normalmente, com a mensagem "Altura inválida" acima.

solução!

Bom, copiei o código de altura inválida e alterei os nomes pra peso. E funcionou, mas aparece a mensagem no campo de user message, e não quando digito "peso". Pelo jeito era a indexação e a forma do navegador mostrar a mensagem. Deve ter mudado com as atualizações.

De qualquer forma, obrigado ;)