1
respuesta

tengo problemas con el codigo hice exactamente lo que esta en el videp.

Hice exactamente lo que está en el video, pero me agrega con valores negativos y no me hace la validación como tal.

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

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

        var form = document.querySelector("#form-adicionar");
        var paciente = capturarDatos(form);
        console.log(paciente);
        var pacienteTr = construirTr(paciente); //validar paciente
        var errores = validaPaciente(paciente);
        if (errores.length > 0) { // nega + nega = true no permite calcular el ims
            mensajeErroresExhibir(errores);
            return;
        }
        var tabla = document.querySelector("#tabla-pacientes");
        tabla.appendChild(pacienteTr);
        form.reset(); //resetea los campos
        var mensajerErrores = document.querySelector("#mensajes-errores");
        mensajerErrores.innerHTML = "";
        console.log(errores);
    })
    //capturando datos de la persona
function capturarDatos(form) {


    var paciente = { // creo el objeto
        nombre: form.nombre.value,
        peso: form.peso.value,
        altura: form.altura.value,
        gordura: form.gordura.value,
        imc: calcularIMC(form.peso.value, form.altura.value)

    }

    return paciente;



}

function construirTr(paciente) {
    //crear los td y tr
    var pacienteTr = document.createElement("tr");
    pacienteTr.classList.add("paciente");
    //asignacion del tr de los td y la tabla
    pacienteTr.appendChild(construirTd(paciente.nombre, "info-nombre"));
    pacienteTr.appendChild(construirTd(paciente.altura, "info-altura"));
    pacienteTr.appendChild(construirTd(paciente.peso, "info-peso"));
    pacienteTr.appendChild(construirTd(paciente.gordura, "info-gordura"));
    pacienteTr.appendChild(construirTd(paciente.imc, "info-imc"));


    return pacienteTr;
}

//asignar los valores a la propiedad textcontent
function construirTd(dato, clase) {
    var td = document.createElement("td");
    td.classList.add(clase);
    td.textContent = dato;

    return td;
}

function validaPaciente(paciente) {
    var errores = [];
    if (validaPeso(paciente.nombre.length == 0)) {
        return errores.push("el nombre no puede estar vacio ");
    }
    if (validaPeso(paciente.peso.length == 0)) {
        return errores.push("el peso no puede estar vacio ");
    }
    if (validaPeso(paciente.altura.length == 0)) {
        return errores.push("el altura no puede estar vacio ");
    }
    if (validaPeso(paciente.gordura.length == 0)) {
        return errores.push("el gordura no puede estar vacio ");
    }
    if (validaAltura(paciente.altura)) {
        return errores.push("altura incorrecto");
    }


    if (validaAltura(paciente.altura)) {
        return errores.push("altura incorrecto");
    }

    return errores;

}

function mensajeErroresExhibir(errores) {
    var ul = document.querySelector("#mensajes-errores");
    ul.innerHTML = ""; //cerrar me la lista
    errores.foreach(function(error) {
        var li = document.createElement("li");
        li.textContent = error;
        ul.appendChild(li);
    })


}
1 respuesta

Hola Miguel,

Le pido que marque o publique aquí en qué clase del curso se ha visto este contenido para que yo pueda verificar lo que puede estar saliendo mal.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios