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

IMC no JS

antes o IMC aparecia certinho depois dos proximos passos do professor passou a nao calcular mais

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

var pacientes = document.querySelector(".paciente");

for(var i = 0; i < pacientes.lenght ; i++){

    var paciente = pacientes(i);

    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");

    var pesoEhValido = true;
    var alturaEhValida = true;

    if(peso <= 0 || peso >= 1000){
        console.log("Peso Invalido!");
        pesoEhValido = false;
        tdImc.textContent = "Peso Invalido!";
    }

    if(altura <= 0 || altura >= 3.00){
        console.log("Altura Invalida!");
        alturaEhValida = false;
        tdImc.textContent = "Altura Invalida!";
    }

    if( alturaEhValida && pesoEhValido){
        var imc = peso / (altura * altura); 
        tdImc.textContent = imc.toFixed(2);
    }
}
7 respostas

Olá, Felipe.

Está aparecendo algum erro no console do seu navegador?

no console nao aparece nenhum erro mesmo, só nao esta calculando nao sei o porque, depois de eu ter seguido os passos do instrutor que era pra colar o resto do codigo dentro do "for" nao pegou mais

Olá Felipe, provavelmente o erro está no querySelector, que retorna apenas o primeiro, troque por querySelectorAll, retorna um "array" com todos:

var pacientes = document.querySelector(".paciente");

troque para:

var pacientes = document.querySelectorAll(".paciente");

Não funcionou, eu alterei, salvei e abri de novo e nao foi

Felipe, tem esse outro erro aqui também, trocar parenteses por colchetes, corrigi e vê se funciona agora.

var paciente = pacientes(i);

para

var paciente = pacientes[i];

não funcionou, o maior problema tambem é que não tem o codigo do professor coo nos outros curso tem e ai acaba que nao tem como comparar, já vi e revi a aula e nao consegui resolver

solução!

Felipe,

Além dos outros erros citados.
 Corrige o seu for. Você digitou lenght. E é length.

for(var i = 0; i < pacientes.lenght ; i++){

for(var i = 0; i < pacientes.length ; i++){

Dica: use o console para achar qual linha está com problema.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software