Javascript JQuery验证:验证隐藏表单(可能存在错误)
我正在使用来处理表单验证 我遇到的问题是,当表单被隐藏时,验证插件会忽略需要验证的字段并直接提交表单 例如: 我已经浏览了这个插件,并用谷歌搜索了这个问题,但我找不到任何说明隐藏表单中的字段被忽略原因的信息 值得注意的是,如果页面上有两个表单,其中一个是隐藏的,另一个是显示的,那么如果两个表单使用相同的验证方法,则两个表单都会成功验证。但是,如果调用两个单独的验证方法,则隐藏表单中的字段仍然会被忽略 使用相同的验证函数验证两个表单: 使用不同的验证函数验证两个表单: 有人知道这是一个bug还是有一种特殊的方法来验证隐藏的表单吗?试试这个 我在Javascript JQuery验证:验证隐藏表单(可能存在错误),javascript,jquery,validation,Javascript,Jquery,Validation,我正在使用来处理表单验证 我遇到的问题是,当表单被隐藏时,验证插件会忽略需要验证的字段并直接提交表单 例如: 我已经浏览了这个插件,并用谷歌搜索了这个问题,但我找不到任何说明隐藏表单中的字段被忽略原因的信息 值得注意的是,如果页面上有两个表单,其中一个是隐藏的,另一个是显示的,那么如果两个表单使用相同的验证方法,则两个表单都会成功验证。但是,如果调用两个单独的验证方法,则隐藏表单中的字段仍然会被忽略 使用相同的验证函数验证两个表单: 使用不同的验证函数验证两个表单: 有人知道这是一个bug还
验证
调用中添加了忽略
:隐藏
选项
$("form").validate({
ignore: 'hidden',
rules: {
"first": "required"
},
invalidHandler: function() {
alert("error");
},
submitHandler: function( form ) {
alert("no error");
}
});
如果您签出上的
忽略
选项,它会显示默认值为:hidden
。这显然意味着,如果不明确指定ignore
选项,验证将忽略隐藏的输入
只需定义ignore
选项(可以留空),它就可以解决问题
$("form").validate({
ignore: '',
rules: {"hidden_field": {required:true}}
});
谢谢,这真奇怪。我似乎能够在ignore字段中添加任何内容,而且效果很好。我想这一定会迫使它遍历字段,这让我觉得这一定是个bug。谢谢你的帮助@我的头痛-是的,我注意到了,很奇怪,但很好,不管怎样它还是有效的=)请注意,之所以有效,是因为你从前面漏掉了冒号:隐藏。您实际上是告诉它忽略任何可能存在的html标记,而不是告诉它忽略隐藏类型的输入。我面临同样的问题,因此我正在编写自己的代码来验证表单。(当我在.aspx webform中时)+1-谢谢,这解释了为什么在ignore中添加任何内容仍然有效