当我取消隐藏时,如何阻止jquery验证突出显示我的字段?

时间:2016-08-24 20:13:40

标签: jquery jquery-validate expressiveannotations

在我的表单上,我有许多可选字段,只有在提供了先前的复选框或单选按钮值时才需要这些字段。为了保持表单清洁,我隐藏了那些额外的字段,直到需要它们为止。

我遇到的问题是当这些字段被取消隐藏时,它们会被突出显示,好像它们有错误一样,很可能是因为它们被标记为有条件要求。有没有办法防止这种情况发生,所以验证只发生在提交?

我正在使用ExpressiveAnnotations并且不引人注意的验证将所有内容连接起来。我的jquery验证配置是:

$.validator.setDefaults({
    highlight: (element) => {
        $(element).closest('.form-group').addClass('has-error');
    },
    unhighlight: element => {
        $(element).closest('.form-group').removeClass('has-error');
    }
});

隐藏或显示我已将其包裹在div中的额外字段,并使用名为hidden的类切换可见性。

1 个答案:

答案 0 :(得分:0)

我确定您已尝试使用

display:block;

而不是

visibility:visible;
在你的CSS中