2
respuestas

No me notifica error cuando pongo una edad menor a 18

const inputNacimiento = document.querySelector('#birth');

inputNacimiento.addEventListener("blur", (evento) => { validarNacimiento(evento.target); });

function validarNacimiento(input) { const fechaCliente = new Date(input.value); let mensaje = "" if(mayorDeEdad(fechaCliente)){ mensaje = "Debes tener al menos 18 años de edad" } input.setCustomValidity(mensaje); }

function mayorDeEdad(fecha){ const fechaActual = new Date(); const diferenciaFechas = new Date( fecha.getUTCFullYear()+18, fecha.getUTCMonth(), fecha.getUTCDate() ); return (diferenciaFechas <= fechaActual); }

El código es igual al del profesor

2 respuestas

if(!mayorDeEdad(fechaCliente)) Puqueño detalle, te falta el opertador ! (no) que seria if (si) ! (no) = si - no es mayor de edad Ojala y jale tu ejercicio poruq es feo frustrarse...

Buen día compañero Nicolas, también puedes probar retirando los paréntesis en la última linea de código:

return diferenciaFechas <= fechaActual; }

Éxitos!