Javascript jQuery验证错误类影响Select元素
按下submit按钮后,Javascript jQuery验证错误类影响Select元素,javascript,jquery,css,jquery-validate,Javascript,Jquery,Css,Jquery Validate,按下submit按钮后,表单元素出现验证错误时,errorClass似乎应用于我不想要的元素错误类应仅应用于错误消息 问题:我们如何避免这个问题 jsFiddle: 更新 jsfiddle: 如果查看更新的代码,当错误发生时,类警报不会应用于错误元素,直到您单击错误元素。。。这种奇怪的行为在Chrome和Firefox中都可以看到 不知何故,$(element).simbines('label.error').addClass('alert')最初没有添加警报类…您可以使用高亮显示和取消高亮
表单元素出现验证错误时,errorClass
似乎应用于我不想要的
元素<代码>错误类应仅应用于错误消息
问题:我们如何避免这个问题
jsFiddle:
更新 jsfiddle: 如果查看更新的代码,当错误发生时,类
警报
不会应用于错误元素,直到您单击错误元素。。。这种奇怪的行为在Chrome和Firefox中都可以看到
不知何故,
$(element).simbines('label.error').addClass('alert')
最初没有添加警报
类…您可以使用高亮显示
和取消高亮显示
回调函数将任何类应用于任何元素。以下是默认函数。通过将它们作为选项包含在.validate()
中,您可以使用您想要的任何代码超越这些默认值
highlight: function( element, errorClass, validClass ) {
if ( element.type === "radio" ) {
this.findByName(element.name).addClass(errorClass).removeClass(validClass);
} else {
$(element).addClass(errorClass).removeClass(validClass);
}
},
unhighlight: function( element, errorClass, validClass ) {
if ( element.type === "radio" ) {
this.findByName(element.name).removeClass(errorClass).addClass(validClass);
} else {
$(element).removeClass(errorClass).addClass(validClass);
}
}
编辑:
关于OP的修正问题
“不知何故,$(element)。同级('label.error')。addClass('alert');
最初没有添加alert类…”
这是因为您正在尝试选择label.error
,但它还不存在。您必须有一个标签。错误
,然后才能选择它并应用。警报
。。。这两件事不可能同时发生
解决方法可能包括将插件的默认errorClass
更改为.alert
,然后使用高亮显示
和取消高亮显示
将需要应用于选择
元素的任何其他类应用于该元素
请参阅:您想要什么?另外,提琴不起作用。请在OP中包含代码,这样这个问题就不会依赖于外部链接的健康状况。谢谢。@tymeJV errorClass应该只应用于错误消息,而不是这个插件的设计方式。指定的或默认的错误类应用于有错误的元素。@Sparky噢正确的方法应该是
高亮显示方法?谢谢!如果您在查看更新的代码,当错误发生时,类警报
不会应用于错误元素,直到您单击错误元素。。。有什么想法吗?很好的回答。我可以用它来停止广播并选择字段以避免抛出错误。