jQuery Validate 校验多个相同name的方法

发布时间 - 2026-01-11 01:10:08    点击率:

导读:

在表单页中有如下代码

 <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 //添加这行

以上所述是小编给大家介绍的jQuery Validate 校验多个相同name的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# jquery  # validate校验  # validate  # name  # jQuery实现 RadioButton做必选校验功能  # jquery 正整数数字校验正则表达式  # 基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路  # jQuery easyui的validatebox校验规则扩展及easyui校验框validateb  # jQuery插件Validate实现自定义校验结果样式  # jQuery中校验时间格式的正则表达式小结  # jquery对输入框内容的数字校验代码实例  # 多个  # 表单  # 小编  # 这行  # 第一个  # 在此  # 中有  # 给大家  # 在对  # 所述  # 给我留言  # 感谢大家  # 疑问请  # 有任何  # 当前页  # validator  # var  # rulesCache 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: java ZXing生成二维码及条码实例分享  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  三星网站视频制作教程下载,三星w23网页如何全屏?  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  网站建设保证美观性,需要考虑的几点问题!  韩国服务器如何优化跨境访问实现高效连接?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  Laravel如何使用.env文件管理环境变量?(最佳实践)  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  使用豆包 AI 辅助进行简单网页 HTML 结构设计  高端智能建站公司优选:品牌定制与SEO优化一站式服务  智能起名网站制作软件有哪些,制作logo的软件?  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程  IOS倒计时设置UIButton标题title的抖动问题  如何在万网ECS上快速搭建专属网站?  Python自然语言搜索引擎项目教程_倒排索引查询优化案例  如何在阿里云购买域名并搭建网站?  HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  网易LOFTER官网链接 老福特网页版登录地址  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何在阿里云虚拟服务器快速搭建网站?  Android利用动画实现背景逐渐变暗  西安专业网站制作公司有哪些,陕西省建行官方网站?  香港服务器部署网站为何提示未备案?  如何挑选最适合建站的高性能VPS主机?  如何挑选优质建站一级代理提升网站排名?  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  三星、SK海力士获美批准:可向中国出口芯片制造设备  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  如何在阿里云服务器自主搭建网站?  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  如何快速生成凡客建站的专业级图册?  如何在 React 中条件性地遍历数组并渲染元素  Linux后台任务运行方法_nohup与&使用技巧【技巧】  Android 常见的图片加载框架详细介绍  独立制作一个网站多少钱,建立网站需要花多少钱?  Laravel怎么判断请求类型_Laravel Request isMethod用法  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  PHP正则匹配日期和时间(时间戳转换)的实例代码  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  javascript基于原型链的继承及call和apply函数用法分析  javascript中数组(Array)对象和字符串(String)对象的常用方法总结