javascript - 验证成功后从 jQuery.validator 中删除样式

标签 javascript jquery validation

我有以下代码,在使用 jQuery 验证插件时将自定义 css 样式添加到我的表单中。

$(document).ready(function() {
    jQuery.validator.setDefaults({
        errorPlacement: function(error, element) {

        // Adds the red outline
        element.parent().addClass("error");

        // Adds the red cross
        element.siblings(".error_status").addClass('check');

        // Removes the default error
        element.removeClass("error");
        }       
    });

 $("#form").validate();

});

为每个元素设置以下 html 的样式:

<div class="row">
    <label for="id-3"><span>Email address:</span><span class="mark">*</span>
    <input type="text" class="text required" id="id-3" name="email"/>
    <span class="error_status"></span>
</div>

我遇到的问题是我不知道如何在成功验证后删除样式。

最佳答案

您可能想要使用 highlightunhighlight 回调(记录为 here )而不是 errorPlacement。这样,您就不必从元素中手动删除 error 类:

jQuery.validator.setDefaults({
    highlight: function(element, errorClass) {
        var $element = $(element);
        // Add the red outline.
        $element.parent().addClass(errorClass);
        // Add the red cross.
        $element.siblings(".error_status").addClass("check");
    },
    unhighlight: function(element, errorClass) {
        var $element = $(element);
        // Remove the red cross.
        $element.siblings(".error_status").removeClass("check");
        // Remove the red outline.
        $element.parent().removeClass(errorClass);
    }
});

关于javascript - 验证成功后从 jQuery.validator 中删除样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8615207/

相关文章:

javascript - HTML 中的 "Read More"按钮自动隐藏/显示

javascript - 在 jquery liberary jquery-1.4.2.min.js 上,我想在图像悬停时显示隐藏,但它不起作用

javascript - spin.js 似乎不工作/出现

jquery - 如何覆盖位于多个 css id 和类中的内联 !important

php - 为什么脚本没有运行?

validation - 使用 express-validator 验证密码

javascript - 在 ReactJS 中显示来自 Json 的多个图像

c# - C# 中的浮点型/ double 型输入验证

java - Hibernate 验证 没有验证

javascript - 日历日期不显示