Boa noite, eu não estou conseguindo ver qual problema de lógica que estou tendo: Formulario.js:
let botao = document.getElementById('adicionar-paciente')
botao.addEventListener("click",(e)=>{
e.preventDefault()
let form = document.getElementById('form-adiciona')
let incluirPaciente = obterValoresForm(form)
let erros = validaPaciente(incluirPaciente)
console.log(erros);
if(erros.length>0){
exibirMsgErro(erros)
}
let pacienteTr = montaTr(incluirPaciente)
let tabela = document.getElementById("tabela-pacientes")
tabela.appendChild(pacienteTr)
form.reset()
})
function exibirMsgErro(erros){
let ul = document.getElementById("msg-error")
ul.innerHTML=""
erros.forEach(function(erro){
let li = document.createElement("li")
li.textContent = erro
ul.appendChild(li)
})
}
function obterValoresForm(form){
let paciente = {
nome : form.nome.value,
altura : form.altura.value,
peso : form.peso.value,
gordura : form.gordura.value,
imc: calculaIMC(form.peso.value,form.altura.value)
}
return paciente
}
function montaTr(paciente){
let criarTR = document.createElement("tr")
criarTR.classList.add("paciente")
let nomeTD = montaTD(paciente.nome,"info-nome")
let pesoTD = montaTD(paciente.peso,"info-peso")
let alturaTD = montaTD(paciente.altura,"info-altura")
let gorduraTD = montaTD(paciente.gordura,"info-gordura")
let imcTD = montaTD(paciente.imc,"info-imc")
criarTR.appendChild(nomeTD)
criarTR.appendChild(pesoTD)
criarTR.appendChild(alturaTD)
criarTR.appendChild(gorduraTD)
criarTR.appendChild(imcTD)
return criarTR
}
function montaTD(dado,classe){
let td = document.createElement("td")
td.textContent = dado
td.classList.add(classe)
return td
}
function validaPaciente(paciente){
let arrayErros =[]
if(paciente.nome.length == ""){
arrayErros.push("Nome está em branco")
}
if(paciente.gordura.length == ""){
arrayErros.push("% Gordura está em branco")
}
if(paciente.altura.length == ""){
arrayErros.push("A altura está em branco")
}
if(paciente.peso.length == ""){
arrayErros.push("O peso está em branco")
}
if(!validaPeso(paciente.peso)){
arrayErros.push("Peso Inválido")
}
if(!validaAltura(paciente.altura)){
arrayErros.push("Altura Inválida")
}
return arrayErros
}