Я настраиваю форму с помощью плагина проверки jQuery, и моя форма будет состоять из нескольких шагов, поэтому я проверяю форму на каждом шаге и нажимаю кнопку СЛЕДУЮЩАЯ.
Проблема в том, что по умолчанию « invalidHandler » работает только при отправке, но как вызвать ее, если щелкнуть пользовательское событие или любую другую кнопку, но отправить (в моем случае кнопку NEXT)?
Вот мой пример быстрого кода:
$(function() {
$("form").validate({
invalidHandler : function(form, validator) {
var errors = validator.numberOfInvalids();
if(errors) {
alert(errors);
validator.errorList[0].element.focus();
}
},
rules : {
name : 'required'
}
});
$('#next').click(function() {
var element = $('form');
var stepIsValid = true;
$("input.text").each(function(index) {
stepIsValid = element.validate().element($(this)) && stepIsValid;
});
if(!stepIsValid) {
return false;
}
});
});
и форма с кнопкой NEXT:
<form>
<label for="name">Name:</label>
<input type="text" id="name" name="name" class="text" />
<input type="button" value="Next" id="next" />
<input type="submit" />
</form>
Спасибо.