if ($.validator) {
$.validator.prototype.elements = function () {
var validator = this,
rulesCache = {};
// select all valid inputs inside the form (no submit or reset buttons)
return $([]).add($(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;
}));
}
}
项目中用到了Jquery validate验证表单,但是在验证动态生成的多行表单元素时因为name相同导致验证失败,查询网上其他文章后整理出符合需求的修复脚本,在需要校验有重复name表单的页面中引入,其他校验照原有的写法即可。
脚本内容
参考文章
http://blog.csdn.net/molashaonian/article/details/53860041