Ответ 1
var validator = $("form").validate()
validator.errorList
покажет массив ошибок, которые удерживают форму от отправки.
Иногда форма не будет отправляться, потому что у jQuery есть некоторые недопустимые элементы, которые не будут отображаться в сообщении об ошибке.
Как мы можем увидеть эти ошибки, чтобы легче отлаживать?
var validator = $("form").validate()
validator.errorList
покажет массив ошибок, которые удерживают форму от отправки.
Это помогает мне получить список ошибок проверки (идентификаторы входов ошибок и связанные с ними сообщения об ошибках):
if ($('#form').valid()) {
console.log('FORM VALID');
} else {
console.log('FORM INVALID');
var validator = $('#form').validate();
$.each(validator.errorMap, function (index, value) {
console.log('Id: ' + index + ' Message: ' + value);
});
}
var val = $("#form".validate());
console.log("error list", val);
для тех, кто не работает errorList, просто зайдите в консоль и нажмите на errorList
errorList, похоже, работает точно для меня после запуска вызова с valid() в нем.
var validator = jQuery('#form1').validate();
if(jQuery('#form1').valid()){
var submitErrorsList = new Object();
for (var i=0;i<validator.errorList.length;i++){
submitErrorsList[validator.errorList[i].element.name] = validator.errorList[i].message;
}
}
console.log("Submit Errors", submitErrorsList);