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

Erro de calculo IMC no Ultimo Exercícios.

Galera alguém pode me ajudar, na ultima aula7 na hora de adicionar um novo paciente ele adiciona normal só na hora de calcular o imc ele não calcula do novo paciente.

algume pode me ajudar o que extamente está acontecendo?

Obrigado!

Código do calcula-imc.js

var botao = document.getElementById("calcula-imcs"); /botao.onclick = caluculaTodosImcs; botao.onclick = function() { console.log("caluculando"); }/

botao.addEventListener("click", function () {

var trPacientes = document.getElementsByClassName("paciente"); // Array de trs

var possicaoAatual = 0; // variavel de controle

//condição percorreArray(trsPacientes, function(pacienteTr){

var tdNome = pacienteTr.getElementsByClassName("info-nome")[0]; var tdPeso = pacienteTr.getElementsByClassName("info-peso")[0]; var tdAltura = pacienteTr.getElementsByClassName("info-altura")[0];

var pacienteAtual = { nome : tdNome.textContent, peso: tdPeso.textContent, altura : tdAltura.textContent, pegaImc : function(){ if(this.altura !=0) {

var imc = this.peso / (this.altura * this.altura); return imc;

} else { console.log("Não executei por que a altura é igual a zero"); } }};

var imc = pacienteAtual.pegaImc();

var tdImc = pacienteTr.querySelector("info-imc")[0]; tdImc.textContent = imc;

console.log(imc); });

});


esse é o js do adiciona.js.

var botao = document.querySelector("#adicionar-paciente");

botao.addEventListener("click", function(event){

event.preventDefault(); //impede comportanto padrao

var campoNome = document.querySelector("#campo-nome"); var campoPeso = document.querySelector("#campo-peso"); var campoAtura = document.querySelector("#campo-altura");

var pacienteNovo = "

"+ ""+ campoNome.value +""+ ""+ campoPeso.value +""+ ""+ campoAtura.value +""+ ""+ "";

var tabela = document.querySelector("table"); //primeiro elemento tabela.innerHTML = tabela.innerHTML + pacienteNovo;

});

2 respostas
solução!

o código correto seria esse aqui.



var botao = document.querySelector("#adicionar-paciente")

botao.addEventListener("click", function(){
        event.preventDefault()

        var campoNome = document.querySelector("#campo-nome")
        var campoPeso = document.querySelector("#campo-peso")
        var campoAltura = document.querySelector("#campo-altura")


        var novoPaciente = "<tr class='paciente'>"+
                        "<td class='info-nome'>"+ campoNome.value +"</td>"+
                        "<td class='info-peso'>"+ campoPeso.value +"</td>"+
                        "<td class='info-altura'>"+ campoAltura.value +"</td>"+
                        "<td class='info-imc'>"+ campoPeso.value/(campoAltura.value*campoAltura.value) +"</td>"+
                    "</tr>"

var todosPacientes = document.querySelector("table")
todosPacientes.innerHTML = todosPacientes.innerHTML + novoPaciente

campoNome.value = ""
campoPeso.value = ""
campoAltura.value = ""


})

Obrigado!