jQuery中的errorClass验证插件?

2021/01/31 00:11 · jquery ·  · 0评论

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

我正在使用以下代码为我的表单设置jquery验证插件,其中有一个erroClass选项,其中我定义了一个CSS类名authError该类名要应用于错误消息,但它也将相同的类应用于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代码找到了一种更好的方法。highlightvalidate插件中有一个事件,当发生错误以突出显示错误字段时会调用该事件,我只是在调用此事件时删除了类form元素。

$("#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);
    }
});

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

例如

span.authError {color:red;}

input.authError {边界:1px点缀为红色;}

而不仅仅是.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); }
    });

在jQuery验证插件中,errorClass既适用于错误消息元素(通常为<label>,但适用<span>于您的情况),也适用于经过验证的元素本身。由于您只想设置错误消息元素的样式,因此应编写:

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');
    }
});
本文地址:http://jquery.askforanswer.com/jqueryzhongdeerrorclassyanzhengchajian.html
文章标签: ,   ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!