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

Está aparecendo o seguinte erro no console: Uncaught TypeError: Cannot read property 'addEventListener' of null .

function mostraTodosIMCS(){

var trpacientes = document.getElementsByClassName("paciente");

function montaPaciente(pacientetr){

var nome = pacientetr.getElementsByClassName("info-nome")[0]; var altura = pacientetr.getElementsByClassName("info-altura")[0]; var peso = pacientetr.getElementsByClassName("info-peso")[0];

var paciente = {peso : peso.textContent, altura : altura.textContent, nome : nome.textContent, pegaIMC : function(){

if(this.altura != 0){ var imc = this.peso / (this.altura * this.altura); return imc; } else{ console.log("Não posso executar uma divisão por 0!"); } } }; return paciente; }; percorreArray(trpacientes, imprimeIMC); function imprimeIMC(pacientetr){

var pacienteAtual = montaPaciente(pacientetr); var imc = pacienteAtual.pegaIMC(); var nomepaciente = pacienteAtual.nome;

var imctd = pacientetr.getElementsByClassName("info-imc")[0];

console.log(nomepaciente); imctd.textContent = imc; console.log(imc);

}};

var botao = document.getElementById("calcular-imcs"); botao.onclick = mostraTodosIMCS();

2 respostas

faltou a última linha: botao.onclick = mostraTodosIMCS(); e o erro na verdade é este: Uncaught TypeError: Cannot set property 'onclick' of null

solução!

Oi Gabriel, tudo certo?

Posta seu HTML também? Coloca entre dois grupos de ``` que é pra pegar a formatação bonitinha.

No console, clica no erro que está dando e dá uma olhada em qual instrução que ele está acusando.

Esse erro que você disse (Cannot set property 'onclick' of null) é que o browser não está achando o elemento lá no HTML.

Dá uma conferida nos IDs, classes e se você está puxando o JS antes de fechar o elemento <body>.

Abcs!