Quiero usar mensajes de error personalizados en una página de inicio de sesión (como campo obligatorio, dirección de correo electrónico incorrecta)
Usé Spring Security para iniciar sesión y JavaScript para validar los campos. Los mensajes de error de validación funcionan, pero el proceso de inicio de sesión ya no funciona. creo que por; e.preventDefault();
¿Cómo continúo el proceso de inicio de sesión cuando todos los campos son válidos?
Este es mi archivo js;
"use strict"; window.onload = function () { const form = document.getElementById('form'); const email = document.getElementById('email'); const password = document.getElementById('password'); form.addEventListener('submit', e => { e.preventDefault(); validateInputs(); }); const setError = (element, message) => { const inputControl = element.parentElement; const errorDisplay = inputControl.querySelector('.error'); errorDisplay.innerText = message; inputControl.classList.add('error'); inputControl.classList.remove('success') } const setSuccess = element => { const inputControl = element.parentElement; const errorDisplay = inputControl.querySelector('.error'); errorDisplay.innerText = ''; inputControl.classList.add('success'); inputControl.classList.remove('error'); }; const isValidEmail = email => { const re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; return re.test(String(email).toLowerCase()); } function validateInputs() { const emailValue = email.value.trim(); const passwordValue = password.value.trim(); if (emailValue === '') { setError(email, 'Email is required'); } else if (!isValidEmail(emailValue)) { setError(email, 'Provide a valid email address'); } else { setSuccess(email); } if (passwordValue === '') { setError(password, 'Password is required'); } else { setSuccess(password); } }}