验证组时出现奇怪的错误清除行为
Strange error clearing behavior when validating group
我使用的是jquery validate,并设置了一个组,这样当我所需的任何字段无效时,它只显示一条错误消息。错误被正确抛出,但每当有多个无效字段时,我就会遇到问题。出于某种原因,jquery在清除第一个无效字段时会清除错误消息。它似乎没有考虑到可能还有其他无效字段尚未修复的事实。我需要错误消息保持不变,直到清除组中最后一个无效项为止。
这是我正在使用的代码:
jQuery(function ($) {
jQuery.validator.messages.required = "Please complete the required fields.";
$("#quote").validate({
errorLabelContainer: "#error-note",
rules: {
serviceDate: "required",
recurringBasis: "required"
},
highlight: function (element) {
$(element).parent().prev().prev('span').addClass("error");
},
unhighlight: function (element) {
$(element).parent().prev().prev('span').removeClass("error");
},
groups: {
collecive: "serviceDate recurringBasis"
}
});
});
这里有一个Fiddle来帮助演示我在说什么。
我需要组错误消息"请填写必填字段。"以保持不变,直到组中最后一个无效项被清除。如有任何帮助,我们将不胜感激。
由于这似乎是一个bug,所以这里没有太多可以做的事情。(我认为关于修复错误和修改插件源代码的讨论应该局限于开发者的官方GitHub存储库。)
否则,将onkeyup
和onfocusout
选项设置为false
将强制窗体验证测试仅在提交按钮的click
事件发生时发生。这并不理想,但在修复错误之前,这可能是一个可以接受的解决方法。
$("#quote").validate({
onkeyup: false,
onfocusout: false,
...
http://jsfiddle.net/vRWgv/3/
相关文章:
- document.open/document.write没有正确地清除chrome中的文档——这是chrome的错误吗
- jQuery 验证 - 调用某些元素的 .valid() 方法不会清除错误
- 当 AJAX 响应成功时清除 jquery 成功/错误消息 span 类
- 如何清除错误消息
- 当错误时清除cookie 使用护照反序列化用户.js
- 清除文本框,但使用 Java 脚本给出错误
- JavaScript错误表单验证:提交时清除所有输入字段
- 如何在javascript中检测字段是否在焦点上并清除它旁边的错误
- jquery屏蔽了输入插件,错误时不清除字段
- Firefox控制台错误:试图在清除的范围内运行编译并执行脚本
- 验证组时出现奇怪的错误清除行为
- 格式化Gulp输出以清除错误
- 清除Typeahead.JS查询时出现缺少源错误
- 这个jQuery代码是错误的,需要我不断清除缓存..为什么?
- 我们如何清除此错误Microsoft JScript运行时错误:Object dos't支持属性或方法'
- 在错误被纠正后清除验证错误消息
- 清除 angularjs 表单中的错误
- 非典型的清除浮动错误
- 给我错误消息但在输入字段后没有清除错误消息的代码
- JavaScript从文本字段中清除错误的数据