分享

jQuery validate验证隐藏表单(hidden)域

 aaie_ 2017-03-04
validate 插件默认不会校验隐藏的 input(包括 type="hidden" 的或 display:"none" 的 input),我猜想插件作者这么做的原因可能是为了提升性能。但是有时还是需要对一个隐藏的 input 进行操作。

方法一:(来源于网上,未进行测试)

把这项限制去除:打开 jquery.validate.min.js,把ignore:":hidden"改为ignore:""

方法二:

将input的width设置为0,高度设置为0.5px(值不能太小,大于0小于0.3px时,validate 插件没有进行验证),这样input在页面上就看不见了,实现了隐藏的效果,而且validate 插件也会进行验证。

<input style="height:0.5px;width:0px;padding:0px;margin:0px;" data-val="true" data-val-required="请选择生日。" id="Dob" name="Dob" value="" />


jQuery validate很不错的一个jQuery表单验证插件。升级到了1.9版的后,发现隐藏表单域验证全部失效,特别是在jquery.ui.tabs.min.js构造的Tabs里的验证!网上一搜,也没查到是怎么回事。最后在1.9的changelog里发现了这么一句
changelog里
* Fixed #189 - :hidden elements are now ignored by default
ignore: ":hidden",
ignore: ""       就又开始验证隐藏域了

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约