Estou com problemas, o prgrama estava funcionando perfeitamente ate quando apliquei o for (; ;) {} e começou a aparecer varios erro com getElementsClassName
Uncaught TypeError: Cannot read property 'textContent' of undefined
codigo javascript:
var trsPacientes = document.getElementsByClassName("paciente");
for (posicaoAtual = 0;posicaoAtual <= trsPacientes.length - 1;posicaoAtual++) {
var pacienteTr = trsPacientes[posicaoAtual];
var tdNome = pacienteTr.getElementsByClassName("info-nome")[0];
var tdPeso = pacienteTr.getElementsByClassName("info-peso")[0];
var tdAltura = pacienteTr.getElementsByClassName("info-altura")[0];
var Paciente = {nome : tdNome.textContent,
peso : tdPeso.textContent,
tdAltura : tdAltura.textContent
}
if (paciente.altura != 0) {
var imc = paciente.peso / (paciente.altura * paciente.altura);
var tdImc = pacienteTr = document.getElementsByClassName("info-imc")[0];
tdImc.textContent;
console.log(imc);
} else {
console.log("Não executei porque altura é igual ZERO")
}
}
codigo html:
<table>
<tr>
<th>Nome</th>
<th>Peso(kg)</th>
<th>Altura(m)</th>
<th>IMC</th>
</tr>
<tr class="paciente">
<td id="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">Stewart</td>
<td class="info-peso">120</td>
<td class="info-altura">1.80</td>
<td class="info-imc"></td>
</tr>
<tr class="paciente">
<td class="info-nome">Rafael</td>
<td class="info-peso">110</td>
<td class="info-altura">1.90</td>
<td class="info-imc"></td>
</tr>
</table>