エラーメッセージには表示されない無効な要素がjQueryにあるため、フォームが送信されない場合があります。
より簡単にデバッグするために、これらのエラーをどのように確認できますか?
var validator = $("form").validate()
validator.errorList
フォームの送信を妨げているエラーの配列が表示されます。
これは、検証エラーのリスト(エラー入力のIDと関連するエラーメッセージ)を取得するのに役立ちます。
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);