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

Dá erro no código, com tudo certo...

Ué, não sei porque, mas dá erro no código...

ERRO: Uncaught TypeError: Cannot read property 'querySelector' of null

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

var tdAltura = paciente.querySelector(".info-altura");
var tdPeso = paciente.querySelector(".info-peso");
var tdImc = paciente.querySelector(".info-imc");


var altura = tdAltura.textContent;
var peso = tdPeso.textContent;

var alturaEhValida = true;
var pesoEhValido = true;

if (peso <= 0 || peso > 1000) {
    console.log("Peso inválido!");
    tdPeso.textContent = "Peso inválido!";
    pesoEhValido = false;

}

if (altura <= 0 || altura >= 3) {
    console.log("Altura inválida!");
    tdAltura.textContent = "Altura inválida!";
    alturaEhValida = false;
}

if (alturaEhValida && pesoEhValido) {

    var imc = peso / (altura * altura);
    tdImc.textContent = imc;    
} else {
    tdImc.textContent = "Altura e/ou peso inválidos!"
}
2 respostas
solução!

Oi João, tudo bem? O erro diz que existe alguma propriedade ligada ao querySelector que está como undefined. No caso, seria a variável paciente:

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

O querySelector não conseguiu achar esse elemento no HTML e retornou undefined, por isso que as variáveis: tdAltura, tdPeso e tdImc estão dando erro!

Você realmente possui um elemento no HTML com o id primeiro-paciente? Me mande seu código HTML aqui para te ajudar a identificar o erro, fico no aguardo!

De qualquer maneira, espero ter ajudado, qualquer outra dúvida estou a disposição, abraços e bons estudos!

Percebi, e vi que não existia no meu HTML -_-. Parabéns pra mim! KKKKKKKKK. Enfim, consegui aqui, continuo avançando no JS, obrigado pela ajuda!! :)