自定义jquery-validate的验证行为 1: 自定义表单提交 设置submitHandler来自定义表单提交动作 $(".selector").validate({ submitHandler: function(form) { alert("验证通过"); } }); 如果需要提交表单,可以调用 form.submit(); 或者$(form).ajaxSubmit(); 2: 调试模式 将debug设置为true,表单不会提交,只进行检查,方便调试 $(".selector").validate({ debug: true }) 3: 设置validate的默认值 使用setDefaults可以设置validate的默认值,比如默认所有表单验证都是在debug模式下进行 $.validator.setDefaults({ debug: true }) 4: 某些元素不验证 设置ignore属性可以忽略某些元素不验证 $(".selector").validate({ ignore: "ignore" }) 5: 验证时机 jquery.validate可以很方便的设置在什么时候触发验证动作 onsubmit: 提交时是否验证 $(".selector").validate({ onsubmit: false }) onfocusout: 失去焦点时验证(checkboxes/radio除外) $(".selector").validate({ onfocusout: false }) onkeyup: 在keyup时验证 $(".selector").validate({ onkeyup: false }) onclick: 在checkboxes、radio点击时验证. $(".selector").validate({ onclick: false }) 6: 重写验证规则和验证提示信息 //重写max的的验证提示信息 $.validator.messages.max = jQuery.format("Your totals musn't exceed {0}!"); //重写equal方法 $.validator.methods.equal = function(value, element, param) { return value == param; }; 7: focusInvalid 是否把焦点聚焦在最后一个动作或者最近的一次出错上 $(".selector").validate({ focusInvalid: false }) 8: focusCleanup 如果该属性设置为True, 那么控件获得焦点时,移除出错的class定义,隐藏错误信息,避免和 focusInvalid.一起用。 $(".selector").validate({ focusCleanup: true }) 9: meta 设置meta来封装验证规则 $(".selector").validate({ meta: "validate", })