FORM.JS{
var botao = document.querySelector("#adicionar-paciente");
botao.addEventListener("click", function()
{
event.preventDefault();//previne comportamento padrao do html
var form = document.querySelector("#form");
var paciente = criandoform(form);
var pacienteTR = criandotr();
var tabela = document.querySelector("#tabela-pacientes");
tabela.appendChild(pacienteTR);
form.reset();
function criandoform(form){
var paciente =
{
nome: form.nome.value,
peso: form.peso.value,
altura: form.altura.value,
gordura: form.gordura.value,
imc: calcimc(form.peso.value, form.altura.value)
}
return paciente;
}
function criandotr()
{
var pacienteTR = document.createElement("tr");
pacienteTR.classList.add("paciente");
pacienteTR.appendChild(criandotd(paciente.nome, "info-nome"));
pacienteTR.appendChild(criandotd(paciente.peso, "info-peso"));
pacienteTR.appendChild(criandotd(paciente.altura, "info-altura"));
pacienteTR.appendChild(criandotd(paciente.gordura, "info-gordura"));
pacienteTR.appendChild(criandotd(paciente.imc, "info-imc"));
return pacienteTR;
}
function criandotd(dado, classe)
{
var td=document.createElement("td");
td.textContent = dado;
td.classList.add(classe)
return td;
}
});
}
CALULAIMC.JS{
var pacientes = document.querySelectorAll(".paciente")
for(var i=0 ; i<pacientes.length;i++){
var paciente =pacientes[i];
var tdpeso = paciente.querySelector(".info-peso");
var peso = tdpeso.textContent;
var tdaltura = paciente.querySelector(".info-altura");
var altura= tdaltura.textContent;
var tdimc = paciente.querySelector(".info-imc");
var evalido1 = true, evalido2=true;
if(peso <=0 || peso >=1000){
tdimc.textContent = "peso invalido";
paciente.style.backgroundColor = "red";
evalido1 = false
}
if(altura <=0 || altura >=3.00){
tdimc.textContent = "peso invalido";
paciente.style.backgroundColor = "red";
evalido2 = false
}
if(evalido1 && evalido2){
var imc = calcimc(peso,altura);
tdimc.textContent = imc;
}
}
function calcimc(peso, altura){
var imc=0;
imc= peso / (altura*altura);
return imc.toFixed(2);
}}
o imc sempre fica com o valor "NAN"