Мне трудно заставить плагин jQuery Validation работать так, как я хочу.
У меня есть форма с несколькими необходимыми входами, правила, как показано ниже:
$("#makeEvent").validate({
onfocusout: false,
rules: {
name: {
required: true,
minLength: 2,
maxLength: 100
},
host: {
required: true,
minLength: 2,
maxLength: 100
},
startDate: {
required: true,
date: true
},
endDate: {
required: true,
date: true
},
desc: {
required: true,
minLength: 10,
maxLength: 255
},
webpage: {
required: false,
url: true
},
email: {
required: true,
email: true
},
}
});
Теперь у меня есть специальный вызов .click (), где я хочу проверить форму, а затем показать предварительный просмотр для пользователя, прежде чем разрешить ему отправить форму.См. Нижеприведенную функцию:
$('#submitPreview').click(function() {
if($("#makeEvent").valid() === false) {
//What to do if validation fails
} else if($("#makeEvent").valid() === true) {
//Show the preview and let the user either make changes or submit the final result
}
});
Но что происходит, так это то, что функция проверяет только первый ввод (имя) и даже неверно его проверяет (правила требуют минимум 2 символа, но все же проверяется только сВведен 1 символ. Он возвращает false только в том случае, если символы вообще не добавлены).
Возможно, мой подход не самый лучший, поэтому я открыт для любых предложений.Если вы хотите взглянуть на грязный исходный код, вы можете увидеть функцию в действии здесь: http://event.gusthlm.se/make.php