jQuery验证,如何不验证所需的输入

时间:2014-05-21 06:59:05

标签: javascript jquery html jquery-validate

例如我有<input name="surname" id="surname" type="text"> 有时我会使这个输入不可见,然后我想,这个输入不是必需的。

我的解决方案是在隐藏输入时添加值,例如“some value”,当for is submited时,使用PHP删除此值,而不是将此defualt值称为数据库。

但这不是一个好的解决方案,这是更多的解决方法,也许更好的解决方案是使required字段不是required,而且还必须是添加回required的解决方案。< / p>

我正在使用jQuery validate插件。

3 个答案:

答案 0 :(得分:1)

首先,将特定类应用于您要忽略的字段。

$('inputfieldlist').addClass('ignoreClass');   

然后,

$("#formName").validate({
   ignore: ".ignoreClass"
});

这将忽略类 ignoreClass 的所有元素。

阅读 Jquery Validate 了解详情。

答案 1 :(得分:0)

引用OP

  

&#34; ...可能是更好的解决方案,不需要required字段,但也必须是添加回required的解决方案。&#34; < / p>

然后这个答案正是你所要求的。你将能够添加&#34;并且&#34;删除&#34;您希望使用the .rules() method时的规则。 (注意:此答案不要求您更改任何现有HTML标记或添加/切换任何类。

要将required规则动态添加到id="surname" ...

$('#surname').rules('add', {
    required: true
});

required ...

动态删除id="surname"规则
$('#surname').rules('remove', 'required');

虽然我不确定你为什么需要这样做,但默认情况下 ,将忽略不可见字段进行验证。

答案 2 :(得分:-1)

你可以轻松设置。 Jsfiddle你可以将必需更改为true并查看其工作原理

rules:{
    notrequired: {
        required: false
    }
}