【发布时间】:2016-01-22 15:57:35
【问题描述】:
我设置了以下默认验证器选项,如果验证不起作用,我需要在其中显示红色错误消息
但以下似乎适用于Input 和textareas,但不适用于select
$.validator.setDefaults({
ignore: "",
errorPlacement: function(error, element) {
element.attr('title', error.addClass('error').text());
element.attr('placeholder', error.addClass('error').text());
element.attr('title', error.text());
},
highlight: function(element, errorClass, validClass) {
$(element).addClass(errorClass).addClass('error').removeClass(validClass).removeClass('valid');
$(element.form).find("input[id=" + element.id + "]").addClass(errorClass).addClass('error');
$(element.form).find("select[id=" + element.id + "]").addClass(errorClass).addClass('error');
},
unhighlight: function(element, errorClass, validClass) {
$(element).removeClass(errorClass).removeClass('error').addClass(validClass).addClass('valid');
$(element.form).find("input[id=" + element.id + "]").removeClass(errorClass).addClass(validClass).addClass('valid');
$(element.form).find("select[id=" + element.id + "]").removeClass(errorClass).addClass(validClass).addClass('valid');
}
});
CSS
.error {
color:#F00 !important;border:1px solid red !important;
}
.valid {
color:#060 !important;
}
【问题讨论】:
-
嘿,你认为你可以尝试发布一个工作示例(使用相关的 html)吗? :)
-
如果他不发布 html,你怎么知道他有相同 ID 的元素?
-
是的,我看到了,但这并不意味着他有两个具有相同 id 的元素,这只是一种更改具有此 id 的元素的方法,无论是输入还是选择,它不是最好的方法,但这不是你的想法
-
@kpucha 好的,感谢您澄清这一点。我将删除我的 cmets
-
你好,这里是网站的链接,点击提交按钮,你会看到,选择不验证
http://tinyurl.com/zl5l34d
标签: javascript jquery html css validation