jQuery验证插件:默认情况下在blur()上验证

jQuery验证插件:默认情况下在blur()上验证,jquery,jquery-validate,Jquery,Jquery Validate,好的,我知道什么时候(不)在blur上进行验证: 在字段被标记为无效之前,验证是延迟的:在第一次提交表单之前,用户可以在字段中进行制表,而不会收到恼人的消息–在有机会实际输入正确的值之前,他们不会被窃听 是否有方法覆盖此行为?我希望在每个字段失去焦点时进行验证,而不是在出现错误后进行验证。默认情况下,jQuery验证是“惰性”验证。这意味着,在第一次单击submit之前,当从一个字段移动到另一个字段时,大部分验证被忽略 您正在请求“急切”验证,因此只需使用自定义函数超越onfocusoutdef

好的,我知道什么时候(不)在
blur
上进行验证:

在字段被标记为无效之前,验证是延迟的:在第一次提交表单之前,用户可以在字段中进行制表,而不会收到恼人的消息–在有机会实际输入正确的值之前,他们不会被窃听

是否有方法覆盖此行为?我希望在每个字段失去焦点时进行验证,而不是在出现错误后进行验证。

默认情况下,jQuery验证是“惰性”验证。这意味着,在第一次单击submit之前,当从一个字段移动到另一个字段时,大部分验证被忽略

您正在请求“急切”验证,因此只需使用自定义函数超越
onfocusout
default即可

$('#yourForm').validate({
    // rules, options, etc.,
    onfocusout: function(element) {
        // "eager" validation
        this.element(element);  
    }
});
文档

附加参考

默认值
onfocusout
功能

onfocusout: function(element) {
    // "lazy" validation by default
    if (!this.checkable(element) && (element.name in this.submitted || !this.optional(element))) {
        this.element(element);
    }
},

哦,哇。太简单了!事实上,我只是潜入到代码中,并找出了这个精确的解决方案…所以我将发布我自己相同的答案并接受它。只是开玩笑而已。为你接受!