По умолчанию плагин активирует проверку при вводе пользователем. Вы должны деактивировать эти опции:
$("#ftblSubGroupsadd").validate({
onfocusout: false,
onkeyup: false,
onclick: false,
showErrors: function(){
this.defaultShowErrors();
alert('Note, a few mandatory fields remain un-answered.');
$("label.error").closest("div[class=inside]").css("display","block");
$("label.error").closest("div.boxed").removeClass().addClass('box');
}
});
Надеюсь, это поможет, д.
Редактировать для комментариев:
Я не на 100%, но кажется, что обработчик (или ваш собственный, определенный с помощью опции showErrors, или по умолчанию) вызывается снова , когда все ошибки были исправлены . Подпись полного обработчика имеет два параметра:
showErrors: function(errorMap, errorList) { ... }
Первый аргумент - это карта ошибок, второй - массив ошибок.
Таким образом, вам лучше всего проверить количество ошибок:
showErrors: function(errorMap, errorList) {
var len = errorList.length; // or var len = this.numberOfInvalids();
if(len > 0) {
this.defaultShowErrors();
alert('Note, a few mandatory fields remain un-answered.');
$("label.error").closest("div[class=inside]").css("display","block");
$("label.error").closest("div.boxed").removeClass().addClass('box');
}
}