Мой код отлично работает here.
Но проблема в том, что я хочу добавить некоторую проверку кода, чтобы форма не могла быть отправлена, если что-то не так в коде. Вот код, я добавил:Должен ли я подтвердить свою форму дважды?
Jquery код:
var user = document.getElementById('u');
var email = document.getElementById('em');
var pass1 = document.getElementById('p1');
var pass2 = document.getElementById('pa2');
function isEmpty(input) {
if (input.value == "" || input.value == null) {
return true;
} else {
return false;
}
}
function validateform() {
if(isEmpty(user) || isEmpty(email) || isEmpty(pass1) || isEmpty(pass2))
{
alert("All fields are required.");
$("#form").submit(function(event) {
event.preventDefault();
});
if(isEmpty(user))
{
user.focus();
}
else if(isEmpty(email))
{
email.focus();
}
else if(isEmpty(pass1))
{
pass1.focus();
}
else if(isEmpty(pass2))
{
pass2.focus();
}
}
}
Я также добавил Id к моей форме:
<form action="m.php" method="post" id="form">
Я также добавил onsubmit здесь:
<input name="submit" type='submit' value='Submit' onsubmit="validateform()">
, но он не работает, страница просто перемещается в m.php
, даже если все поля пустые. что мне делать? должен ли я установить плагин проверки подлинности jquery и проверить дважды?
Редактировать
Вот Demo
Нет, вы должны сделать вашу работу валидация первый раз вокруг (: – George
@oGeez так, что случилось с моей проверки здесь, я не получаю ошибки! –
«но он не работает, страница просто перемещается в m.php» - отсутствует «return false», если проверка завершается неудачно - или форма будет просто продолжена и отправлена –