fr - это id формы..
|
Вставил после return result; в функции validate
|
if(!validate()) { fr.preventDefault(); } ? |
Форма
<form id="fr" onsubmit="validate();"> |
Крч нашаманил, сам немогу понять как это работает но.. убрал result в
result = true; Хз, вот думаю как.. возвращается 2 result получается и происходит путанница? ДА поидее так.. остается 1 тру в email и 2 false.. крч я думаю лучше сделать 2 функции проверки чтобы два результата было и добавить проверку этих результатов.. Я верно думаю? |
var userEmail = document.getElementById("username"), userPass = document.getElementById("pass") var regexp = new RegExp("^([a-z0-9_-]+\.)*[a-z0-9_-]+@[a-z0-9_-]+(\.[a-z0-9_-]+)*\.[a-z]{2,6}$"); var regexpP = new RegExp("^[a-zA-Z0-9!@#$%^&*]{6,16}$"); function validate() { var result = false; if(!regexp.test(userEmail.value)) { userEmail.style.border = "2px solid red"; result = false; alert('Некорректно введен Email!') } else { userEmail.style.border = "2px solid green"; result = true; } if(!regexpP.test(userPass.value)) { userPass.style.border = "2px solid red"; result = false; alert('Некорректно введен Пароль!') } else { userPass.style.border = "2px solid green"; } return result; } |
document.querySelector('#fr').addEventListener('submit',function(e){ if(!validate()) e.preventDefault(); }); |
не робит)) можете фул версию со всем скриптом скинуть, а то мб я не туда поставил)
|
LocoThatCould,
<form id="fr"> <input type="text" id="username" /> <input type="password" id="pass" /> <input type="submit" /> </form> <script> document.querySelector('#fr').addEventListener('submit', function(e) { if (!validate()) e.preventDefault(); }); var userEmail = document.getElementById("username"), userPass = document.getElementById("pass"), regexp = new RegExp("^([a-z0-9_-]+\.)*[a-z0-9_-]+@[a-z0-9_-]+(\.[a-z0-9_-]+)*\.[a-z]{2,6}$"), regexpP = new RegExp("^[a-zA-Z0-9!@#$%^&*]{6,16}$"); function validate() { var result = regexp.test(userEmail.value); if (!result) { userEmail.style.border = "2px solid red"; alert('Некорректно введен Email!'); } else userEmail.style.border = "2px solid green"; if (!regexpP.test(userPass.value)) { result = false; userPass.style.border = "2px solid red"; alert('Некорректно введен Пароль!') } else userPass.style.border = "2px solid green"; return result; } </script> |
Часовой пояс GMT +3, время: 13:24. |