jquery.validate v. 1.9 忽略一些隐藏的输入
使用版本 1.7 一切正常,所有隐藏输入都得到验证,
但在 1.9 版本中,有些可以,有些则不行
我使用 asp.net mvc 3 和 jquery.validate + jquery.unobtrusive (jquery 1.7.1)
这是生成的 html:
<!--this gets validated-->
<input type="hidden" data-val="true" data-val-number="The field Chef must be a number." data-val-required="The Chef field is required." value="" name="Chef" id="Chef">
<span data-valmsg-replace="true" data-valmsg-for="Chef" class="field-validation-valid"></span>
<!--this one is ignored-->
<input type="hidden" data-val="true" data-val-number="The field MyFruit must be a number." data-val-required="The MyFruit field is required." value="" name="MyFruit" id="MyFruit">
<span data-valmsg-replace="true" data-valmsg-for="MyFruit" class="field-validation-valid"></span>
有人知道为什么会发生这种情况吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 1.9 版本验证插件会忽略 :hidden 元素="noreferrer">默认。
由于您使用的是不显眼的版本,因此无法设置任何选项。所以你不需要自己初始化插件,因此你必须在初始化后更改它的设置。您可以这样修复它:
此代码适用于标记中的第一个
form
元素,您可以指定您的表单并更改默认行为。With 1.9 version validation plugin ignores
:hidden
elements by default.Because you're using unobtrusive version, you can't set any option. So you don't init plugin yourself, therefor you have to change it's setting after it's initialized. You can fix it like this:
This code works for first
form
element in the markup, you can specify your form(s) and change default behaviour.