for (var posicaoatual=0; posicaoatual <= trspacientes.length-1; posicaoatual++) {
var pacientetratual = trspacientes[posicaoatual];
var tdnome = pacientetratual.getElementsByClassName("info-nome")[0];
var tdpeso = pacientetratual.getElementsByClassName("info-peso")[0];
var tdaltura = pacientetratual.getElementsByClassName("info-altura")[0];
console.log(tdnome.textContent);
console.log(tdpeso.textContent);
console.log(tdaltura.textContent);
var paciente = {nome : tdnome.textContent, peso : tdpeso.textContent, altura : tdaltura.textContent}
console.log(paciente);
if ( paciente.altura != 0 && paciente.peso != 0) {
var imc = paciente.peso / (paciente.altura * paciente.altura);
//abaixo a linha original que só "popula a primeira linha da minha tabela, onde existem 4 "pessoas" com peso e altura
//var tdimc = document.getElementsByClassName("info-imc")[0]; // pega o td do imc do paciente atual
//agora logo abaixo, fiz uma modificação, e os resultados são mostrados corretamente para cada uma das 4 pessoas:
//mudei o [0] por [posicaoatual]
var tdimc = document.getElementsByClassName("info-imc")[posicaoatual]; // pega o td do imc do paciente atual
tdimc.textContent = imc; //Altera o conteúdo do td para o valor da variável imc
console.log(imc);
} else {
if (paciente.peso == 0) console.log("Não posso executar uma divisão por 0! peso zerado!")
else console.log("Não posso executar uma divisão por 0! altura zerado!");
};
};
agora a minha pergunta é a seguinte: veja no bloco do IF da Altura e do Peso diferentes de 0 (zero) ... está comentado o codigo original do exercicio... pois no meu caso, o resultado não apareceu corretamente na pagina HTML... apareceu o ultimo cálculo de IMC na primeira linha... e o segundo bloco abaixo do comentado, faz o meu HTML funcionar perfeitamente, colocando cada calculo em sua respectiva linha... Qual foi o meu erro em não conseguir fazer o calculo original funcionar? ( //var tdimc = document.getElementsByClassName("info-imc")[0]; ) obs.: os consoles.logs aparecem corretamente e o objeto pacientes tb.
abaixo as opções dos TR e TD do meu html:
<tr class="paciente">
<td class="info-nome">Leonardo</td>
<td class="info-peso">57</td>
<td class="info-altura">1.67</td>
<td class="info-imc"></td>
</tr>
<tr class="paciente">
<td class="info-nome">Paulo</td>
<td class="info-peso">100</td>
<td class="info-altura">2.00</td>
<td class="info-imc"></td>
</tr>
<tr class="paciente">
<td class="info-nome">Leila</td>
<td class="info-peso">94</td>
<td class="info-altura">1.68</td>
<td class="info-imc"></td>
</tr>
<tr class="paciente">
<td class="info-nome">Gi</td>
<td class="info-peso">47</td>
<td class="info-altura">1.63</td>
<td class="info-imc"></td>
</tr>