繁体   English   中英

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

[英]How do I prevent jquery validation from highlighting my fields when I unhide them?

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

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

我正在使用ExpressiveAnnotations,并且不干扰用户的验证将所有内容都连接了起来。 我的jquery验证配置是:

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

为了隐藏或显示额外的字段,我将它们包装在div并使用名为hidden的类切换可见性。

我确定您已尝试使用

display:block;

代替

visibility:visible;

在您的CSS中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM