Esse código executa uma vez e exibe o primeiro imc, mas ao passar uma segunda vez dá erro na linha: nome: tdNome.textContent,
O erro é: Uncaught TypeError: Cannot read property 'textContent' of undefined.
Há 3 "pacientes" cadastrados. Alguém consegue identificar o que está acontecendo?
var pacientes = document.getElementsByClassName("paciente");
var i = 0;
while(pacientes[i]!=null){
var trpaciente = pacientes[i];
var tdNome = pacientes[i].getElementsByClassName("info-nome")[i];
var tdPeso = pacientes[i].getElementsByClassName("info-peso")[i];
var tdAltura = pacientes[i].getElementsByClassName("info-altura")[i];
var tdImc = pacientes[i].getElementsByClassName("info-imc")[i];
var paciente = {
nome:tdNome.textContent,
peso:tdPeso.textContent,
altura:tdAltura.textContent,
imc:tdImc.textContent
};
if(paciente.altura!=0){
paciente.imc = parseFloat((paciente.peso / (paciente.altura*paciente.altura)).toFixed(2));
tdImc.textContent = paciente.imc;
console.log(paciente.imc);
}else{
console.log("Valor invalido");
}
i++;
}