事情是這樣的:
$(document).ready(function()
{
jQuery.validator.addMethod("validateCountries", function(value, element) {
alert('s');
return this.optional(element) || /^\d{3}-\d{3}-\d{4}$/.test(value);
});
// add the validation rule
$("#form1").validate();
$("#lbCountries").rules("add", { validateCountries:true });
});
裏面的Add方法,您可以執行您的驗證!
更新1:
動態文本,你將失去顯示錯誤消息。以下是解決該問題的一種方法:
// add the validation rule
$("#form1").validate(
{
messages: { lbCountries: "please specify the countries" }
}
);
lbCountries是一個ListBox控件。
更新2:
您可以將與規則其他規則的屬性,如下圖所示:
$("#lbCountries").rules("add", { validateCountries:true, noOfSelectedItems:3 });
現在,您可以檢查規則,當事件被觸發:
$("#lbCountries").rules().noOfSelectedItems; // this will return 3
但是如果我有一個複選框列表,並且我想確保只有4個被選中,但是該值不能被硬編碼?我需要一種方法使它有時會說「只能選擇複選框。」。 –
JamesB41
2010-06-08 20:40:34
您可以通過在複選框上只有= 4自定義屬性來做一個黑客(不好)。現在,當您訪問複選框列表時,您可以找出需要設置多少個複選框,並且您可以驗證該複選框! – azamsharp 2010-06-08 20:44:09
驗證本身不是問題,我可以使用隱藏的。我遇到麻煩的具體部分是讓*信息*本身爲我正在尋找的編號量身定製。 – JamesB41 2010-06-08 20:46:16