jquery中的errorClassvalidation插件?

我在我的Web应用程序中使用jquery validate插件来validation表单以进行空白和其他简单validation。

我使用下面的代码为我的表单设置jquery validate插件,其中有一个erroClass选项,我在其中定义了一个CSS类名authError ,我想在错误消息上应用它,但是它将同一个类应用于INPUT框作为好吧,我不想在INPUT框中应用它,只是想要它的错误信息。 请检查并提供帮助。 谢谢!

 $("#frmSignin").validate({ debug: false, errorClass: "authError", errorElement: "span", rules: { username: { required: true, minlength: 10 }, password: { required: true } }, messages: { username: { required: "Please enter your username" }, password: { required: "Please enter your password" } } }); 

谢谢,对于技巧家伙,但我通过仅使用jQuery代码找到了更好的方法。 在validate插件中有一个highlight事件,在突出显示错误字段时发生错误时调用,我只是在调用此事件时删除了类表单元素。

 $("#frmSignin").validate({ debug: false, errorClass: "authError", errorElement: "span", rules: { username: { required: true, minlength: 10 }, password: { required: true } }, messages: { username: { required: "Please enter your username" }, password: { required: "Please enter your password" } }, highlight: function(element, errorClass) { $(element).removeClass(errorClass); } }); 

实际上你应该只为输入和span定义不同的类( span,因为errorElement设置为span,否则它将是label ),而不是删除应用的类

例如

span.authError {color:red;}

input.authError {border:1px dotted red;}

而不只是.authError {}将被应用于输入和跨度

  $("#borrowerForm").validate({ errorElement: 'span', errorElementClass: 'input-validation-error', errorClass: 'field-validation-error', errorPlacement: function(error, element) {}, highlight: function(element, errorClass, validClass) { $(element).addClass(this.settings.errorElementClass).removeClass(errorClass); }, unhighlight: function(element, errorClass, validClass) { $(element).removeClass(this.settings.errorElementClass).removeClass(errorClass); }, onkeyup: false, errorPlacement: function (error, element) { error.insertAfter(element); } }); 

在jQueryvalidation插件中, errorClass既适用于错误消息元素(通常是 ,但在您的情况下是,也适用于validation元素本身。 由于您只想设置错误消息元素的样式,因此您应该编写:

 span.authError { // Your error element style. } 

如果要为错误消息提供css。 然后代替使用errorClass定义css规则

 label.error 

检查一下:

 jQuery.validator.messages.required = ""; $('#frm-contact').validate({ invalidHandler: function (e, validator) { var errors = validator.numberOfInvalids(); if (errors) { var message = errors == 1 ? 'You missed 1 field. It has been highlighted below' : 'You missed ' + errors + ' fields. They have been highlighted below'; $("div.error span").html(message); $("div.error").show(); } else { $("div.error").hide(); } }, onkeyup: false, submitHandler: function () { $("div.error").hide(); alert("submit! use link below to go to the other step"); }, highlight: function (element, required) { $(element).fadeOut(function () { $(element).fadeIn(); $(element).css('border', '2px solid #FDADAF'); }); }, unhighlight: function (element, errorClass, validClass) { $(element).css('border', '1px solid #CCC'); } });