我正在使用jQuery驗證插件來驗證表單。表單字段是動態生成的。我有一封電子郵件:jQuery動態添加驗證規則到n個字段
<input type="text" name="customer_email_<?=$i?>" value="" id="customer_email_<?=$i?>" />
此輸入字段在php循環中,可以生成n次。這個想法是檢查輸入的電子郵件是否是唯一的。當用戶在生成的任何字段中輸入內容時,如果電子郵件是唯一的,我將發送一個正在數據庫中檢查的AJAX調用。
var pass_count_array = [<?=$js_array?>]; // generated by php
jQuery.each(pass_count_array, function(index, p) {
//check if the e-mail is unique
jQuery.validator.addMethod("unique_email_"+p, function(value, element) {
return check_unique_email(p);
});
var current_email = "customer_email_"+p;
jQuery("#tair_form").validate({
rules : {
current_email: {
"unique_email_"+p : true
}
});
});
上面的代碼在所有的領域循環,增加了自定義的驗證方法unique_email_1,unique_email_2等 這裏的問題是,驗證規則不接受這一點:
"unique_email_"+p : true
任何想法如何將自定義驗證方法應用於每個電子郵件輸入字段?
雖然我同意,我不認爲這解決了實際問題。 Iskren試圖使用表達式('「unique_email _」+ p')作爲使用jQuery Validation插件的API初始化驗證規則的關鍵。 –