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();两个方法,验证才能生效。