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

Cannot read property 'textContent' of null Aula 3

Olá pessoal, tudo bem ? Estou com um probleminha e não consigo achar meu erro. Minha var peso = tdPeso.textContent; me retornar o valor de null !

<tr_class="paciente"> <tr class="paciente"> <td class="info-nome">Leonardo</td> <td class="info-peso" id="peso-1">57</td> <td class="info-altura" id="altura-1">1.67</td> <td class="info-imc" id="imc-1"></td> </tr>

var tdPeso = document.getElementById("peso-1");
var tdAltura = document.getElementById("altura-1");


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

var paciente = {peso : peso, altura : altura};


//var tdAltura = document.getElementById("altura-2");
//var tdPeso = document.getElementById("peso-2");
//
//var peso2 = tdPeso.textContent;
//var altura2 = tdAltura.textContent;
//
//var paciente2 = {peso : peso2, altura : altura2};
//
//var pacientes = [paciente1, paciente2];
//
//var primeiro = pacientes[0];
//var segundo = pacientes[1];

if(paciente.altura != 0) {
    var imc = paciente.peso /  (paciente.altura * paciente.altura);

    var tdImc = document.getElementById("imc-1");
    tdImc.textContent = imc;

    console.log(imc);
} else {
    console.log("Não posso dividir por zero!");
}

Muito obrigado, aguardo um retorno. Laércio.

5 respostas

Por favor, desconsidere a ali em cima !

Por favor, desconsidere o <tr_class="paciente"> ali em cima *

Obs não é possivel editar os tópicos ? Seria legal se tivesse a opção de editar.

solução!

Laércio,

provavelmente você colocou a sua tag script com esse código antes da criação dos elementos da tela.

<html>
<script>// seu código aqui</script>
<table></table>
</html>

Tente fazer o contrário, primeiro coloque a table e depois o script.

<html>
<table></table>
<script>// seu código aqui</script>
</html>

Se o script for chamado e os componentes ainda não foram interpretados pelo navegador, ele não os identifica quando você tenta acessar o DOM.

Att.

Olá Djonathan Barros, muito obrigado.

Agora sim funcionou, não tinha me dado conta desse detalhe.

Best regards

Por nada Laércio,

que bom que funcionou :),

somente não esqueça de marcar a resposta que solucionou o seu problema para fechar a discussão.

Bons estudos.