2
respostas

"validaPeso is not defined" Como corrigir esse erro ?

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

botaoAdicionar.addEventListener("click",function(event){
    event.preventDefault();

    var form = document.querySelector("#form-adiciona");

    var paciente = obtemPacienteDoFormulario(form);

    var pacienteTr = montaTr(paciente);


    if(!validaPaciente(paciente)){
        console.log("Paciente Invalido");
        return;
    }

    var tabela = document.querySelector("#tabela-pacientes");

    tabela.appendChild(pacienteTr);

    form.reset();
});


function obtemPacienteDoFormulario(form){
    var 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;
}


function montaTr(paciente){

    var pacienteTr = document.createElement("tr");
    pacienteTr.classList.add("paciente");


    pacienteTr.appendChild(montaTd(paciente.nome, "info-nome"));
    pacienteTr.appendChild(montaTd(paciente.peso, "info-peso"));
    pacienteTr.appendChild(montaTd(paciente.altura, "info-altura"));
    pacienteTr.appendChild(montaTd(paciente.gordura, "info-gordura"));
    pacienteTr.appendChild(montaTd(paciente.imc, "info-imc"));


    return pacienteTr;
}

function montaTd(dado,classe){
    var td = document.createElement("td");
    td.textContent = dado;
    td.classList.add(classe);
    return td;
}


function validaPaciente(paciente){
    if(validaPeso(paciente.peso)){
        return true;
    }else{
        return false;
    }
}
2 respostas

Boa noite, David! Como vai?

Veja que dentro da função validaPaciente() vc está invocando uma função chamada validaPeso() mas esta função não foi criada por vc em momento algum. Imagino que esse seja o problema! Faça essa correção e veja se as coisas funcionam como vc esperava.

Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Boa noite Gabriel, o validaPeso( ) está definido em outro arquivo.

function validaPeso(peso){
    if(peso>=0 && peso<=1000){
        return true;}
    else{
        return false;
    }
}