0
我有一個表格,只有數字驗證的文本框。錯誤顯示在jQueryUI模式窗口中。但是,當在文本框中輸入非數字時,我最終會多次出現相同的錯誤消息。而我輸入的非數字值越多,我得到的重複數就越多。任何建議將不勝感激。驗證文本框中的數字與jQuery驗證
這裏是初始驗證
這裏是驗證部分固定
這裏是驗證消息時,我輸入一個非數字的值。注意多個Please enter only digits
消息。
這裏是代碼。
var valForm = function(kit_id) {
var form = $("#frm_" + kit_id);
var strErrors = "<ul>";
form.validate({
errorClass: "error-class",
errorElement: "div",
errorPlacement: function(error, element) {
console.log(error);
strErrors += "<li>" + error[0].innerHTML + "</li>";
$("#error_modal").html("");
$("#error_modal").html(strErrors + "</ul>");
}
});
form.find('input[name^="kit_name_"]').each(function() {
$(this).rules("add", {
required: true,
messages: {
required: "Please enter a name."
}
})
});
form.find('input[name^="kit_desc_"]').each(function() {
$(this).rules("add", {
required: true,
messages: {
required: "Please enter a description."
}
});
});
form.find('input[name^="kit_qty_"]').each(function() {
$(this).rules("add", {
required: true,
digits: true,
messages: {
required: "Please enter a quantity."
}
});
});
if (! form.valid()) {
$("#error_modal").dialog().siblings(".ui-dialog-titlebar").remove();
strErrors = "";
} else {
form.submit();
}
};
每次調用'errorPlacement'函數時,都會將當前錯誤附加到'strErrors'。沒有任何東西能夠從中去除舊的錯誤,所以它只是增長和增長。 – Barmar
在jqueryvalidation.org網站上查看此示例:http://jqueryvalidation.org/files/demo/errorcontainer-demo.html – Barmar