在表单页中有如下代码

    <form>
<input name="zhai"/><!-- 三个相同name的input -->
<input name="zhai"/>
<input name="zhai"/>
</form>

问题:jquery validate在对多个相同name校验时,只校验第一个input框。

解决方案一:在表单页对应的js中加入如下代码 只有当前页可以解决对多个name校验

    if ($.validator) {
$.validator.prototype.elements = function () {
var validator = this,
rulesCache = {};
return $(this.currentForm)
.find("input, select, textarea")
.not(":submit, :reset, :image, [disabled]")
.not(this.settings.ignore)
.filter(function () {
if (!this.name && validator.settings.debug && window.console) {
console.error("%o has no name assigned", this);
}
rulesCache[this.name] = true;
return true;
});
}
}

解决方案二:修改源文件 所有的页面都可以验证多个name

方式1:修改jquery.validate.js文件

用 ctrl+F 查找 this.name in rulesCache 注释掉如下代码。

    elements: function() {
var validator = this,
rulesCache = {}; // select all valid inputs inside the form (no submit or reset buttons)
return $(this.currentForm)
.find("input, select, textarea")
.not(":submit, :reset, :image, [disabled]")
.not( this.settings.ignore )
.filter(function() {
if ( !this.name && validator.settings.debug && window.console ) {
console.error( "%o has no name assigned", this);
}
// 注释掉这里
// select only the first element for each name, and only those with rules specified
//if ( this.name in rulesCache || !validator.objectLength($(this).rules()) ) {
// return false;
//} rulesCache[this.name] = true;
return true;
});
},

方式2:修改jquery.validate.min.js文件用 ctrl+F 查找(c[this.name]=!0,!0)})

return !this.name && b.settings.debug && window.console && console.error("%o has no name assigned", this),
//this.name in c || !b.objectLength(a(this).rules()) ? !1 : (c[this.name] = !0, !0)//注释这行
c[this.name] = !0, !0 //添加这行

解决方案一验证可用,其他方案暂未校验。

本文来源

最新文章

  1. JSON.parse()和JSON.stringify()
  2. Android开发之百度地图--环境搭建
  3. Get code int value for different encoding
  4. alibaba的COBAR真是强大.
  5. HDU 5873 Football Games 【模拟】 (2016 ACM/ICPC Asia Regional Dalian Online)
  6. git 使用过程(一、准备工作)
  7. Android 常规任务的高度【schedule】与【scheduleAtFixedRate】差额
  8. 【原生js】原生js的省市区三级联动
  9. MyBatis开发中解决返回字段不全的问题
  10. ext4 关闭延迟分配
  11. javascript之JSON引入
  12. masm的一些常用编译选项
  13. WS_TABSTOP 与 BS_DEFPUSHBUTTON 第一次使有
  14. 目标检测(一)RCNN--Rich feature hierarchies for accurate object detection and semantic segmentation(v5)
  15. RestTemplate发送HTTP、HTTPS请求
  16. salt相关
  17. LoadRunner基于HTML-based script和URL-based script方式录制的区别和各自的使用场景
  18. es6 用generator进行异步方法同步
  19. java代理-cglib
  20. Android 打造完美的侧滑菜单/侧滑View控件

热门文章

  1. 关于java异常处理的思考
  2. Album++:分布式事务专辑-基础概念
  3. chcod炸弹
  4. linux安装tomcat后启动报错Cannot find ./catalina.sh的解决方法
  5. 第二十五篇 -- QTreeWidget右击菜单的实现
  6. 【阅读笔记】Java核心技术卷一 #6.Chapter8
  7. SAS 常用字符串函数
  8. MySQL 创建高性能索引
  9. HCIA-网络层包结构
  10. MySQL Replication Thread States