formValidator對於動態插入表單的id不支持,但是硬要支持也是可以的,不過需要多次初始化。
在頁面加載的時候執行初始化,舉個例子,如下函數:
function initFormValidator(){ $.formValidator.initConfig({ formID: "addPlanForm", submitButtonID: "addPlanFormSub", validatorGroup: "10006", errorFocus: true, wideWord: false, onError: function () { return false; } }); }
同時執行如下代碼:
function checkInputTxt(){
$("#name").formValidator({ validatorGroup: "10006", onShow: "計劃名稱爲1-80個字符", onEmpty: "計劃名稱必須爲1-80個字符", onFocus: "計劃名稱爲1-80個字符", onCorrect: "驗證通過" }).inputValidator({ min: 1, max: 80, onError: "計劃名稱必須爲1-80個字符" });
}
函數validatePlanForm是在表單提交之前需要執行的,他是校驗表單驗證是否正確。我用到的是ajaxSubmit,這個的用法就不多說了,自己百度。
function validatePlanForm() { if ($.formValidator.pageIsValid("10006")) { return true; } else { $(".onFocus").removeAttr("style"); return false; } }
如果在沒有動態生成的id的情況下,只要在頁面加載的完成的時候執行上邊三個個函數就可以。
$(function () { initFormValidator(); checkInputTxt(); })
如果有動態添加的id,則需要在動態添加完成之後需要執行initFormValidator();
checkInputTxt();兩個方法,驗證才能生效。