jquery validate 验证插件 解决多个相同的Name 只验证第一个的方案
2024-09-01 15:45:20
方案一:如果 项目里不是只是个别页面 有多个name 验证,
那么利用 prototype 来写,把这段代码加在你所要使用多个name的页面 的js初始化里 即可
if ($.validator) {
$.validator.prototype.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;
});
}
}
方案二:修改源文件 这样做 就是所有的页面都可以验证多个name
利用 ctrl+F 查找 this.name in rulesCache 找到 源码 (不是压缩过的 min.js)。把这行if判断注释即可。
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;
});
},
如果是压缩js min.js :
查找 这段 (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
以上是网上找的解决方案,在这里备着,以便日后。
最新文章
- SYMBDSNAP_SDK[3943]: Failed to open device: /dev/symbdsnapctl, errno: 2
- fir.im Weekly - Swift 3.0 的迁移适配指南
- eclipse中手动导入DTD文件的方式
- 接入多家ERP厂商,美团点评餐饮高速路开启
- GCJ 2015-Qualification-A Standing Ovation 难度:0
- [笔记]--Python字符串处理
- java集合的互转
- 更改Sublimetext3的主题文件,改变某些不喜欢的颜色
- 定制化Azure站点Java运行环境(3)
- TFS Build Definition
- Linux 内核模块程序结构
- OGG-02803 Encountered a Data Guard role transition
- Redis 持久化之RDB和AOF
- Nginx 多核cpu负载均衡
- C++ 容器操作
- excel vlookup简易样例【原】
- AngularJS学习笔记(二)
- 逆向知识之CS辅助/外挂专题.2.实现CS1.6透视原理
- OSGi 系列(二)之 Hello World
- USACO 5.4 Character Recognition