Ola turminha, Ola Professores, não consigo validar, o erros.length, so vem zero(0), ou seja nunca é maior que zero(0). A função mensagemDeErros, não cria as LIs, e validaPaciente(paciente) só mostra 1 erro por vez, ao invés de devolver o array de erros.
var BOTAOFORM = document.querySelector("#adicionar-paciente");
BOTAOFORM.addEventListener("click",function(event){
event.preventDefault();
var FORM = document.querySelector("#form-add");
var TABELA = document.querySelector("#tabela-pacientes"); //pegando a tabela
var paciente = objetoPegaDadosForm(FORM); //nosso OBJETO
var erros = validaPaciente(paciente);// erro passou ser um array
console.log(paciente);
console.log(validaPaciente(paciente).length);
if(erros.length == 0){
mensagemDeErros(erros);
return;
}
TABELA.appendChild(pegaObjeto(paciente));// mandando os dados para html
FORM.reset();
});
/**função pega dados de um OBJETO */
function pegaObjeto(OBJETO){
var tr = document.createElement("tr");
tr.classList.add("paciente");
var nome = criaTD(OBJETO.nome,"info-nome");
var peso = criaTD(OBJETO.peso, "info-peso");
var altura = criaTD(OBJETO.altura, "info-altura");
var gordura = criaTD(OBJETO.gordura,"info-gordura");
var imc = criaTD(calculaIMC(OBJETO.peso,OBJETO.altura),"info-imc");
/**mandando os dados para o html */
tr.appendChild(nome);
tr.appendChild(peso);
tr.appendChild(altura);
tr.appendChild(gordura);
tr.appendChild(imc);
return tr;
}
/********************FUNÇÕES *************************** */
function mensagemDeErros(ARRAYdeERROS){
var ULErro = document.querySelector("#erro-digitado");
ARRAYdeERROS.forEach(function(itens){
var LInova = document.createElement("li");
LInova.textContent = itens;
ULErro.appendChild(LInova);
return ULErro;
});
// return ULErro;
}// fim da função
function validaPaciente(paciente){
var erro = [];
if(!validaAltura(paciente.altura)){
erro.push ="Valores de altura Invalida passado no campo!";
}
if(!validaPeso(paciente.peso)){
erro.push = "Valores de peso Invalido passado no campo!";
}
if(paciente.gordura == ""){
erro.push = "Valores de gordura Invalido passado no campo!";
}
if(paciente.nome == ""){
erro.push = "Campo nome com dados Invalidos!";
}
console.log(erro);
return erro;
}//fim do validaPaciente
function objetoPegaDadosForm(FORM){
paciente = {//temos que criar um OBJETO paciente
nome: FORM.nome.value,
peso: FORM.peso.value,
altura: FORM.altura.value,
gordura: FORM.gordura.value,
imc: calculaIMC(FORM.peso.value,FORM.altura.value)
}
return paciente;
}// fim da função
function criaTD(dados,classe){
var td = document.createElement("td");
td.textContent = dados;
td.classList.add(classe);
return td;
}