Jquery validate验证表单时只验证第一个input的问题

Jquery validate验证表单时多个name相同的元素只验证第一个的问题

jquery.validate插件中name属性相同(如name=“name”)时验证的bug
当name属性相同,则validate只校验第一个name的控件,其余input则不校验

使用jquery.validate插件http://jqueryvalidation.org/
当节点的name相同时候,脚本特意忽略剩余节点,导致所有相关节点的errMsg都显示在第一个相关节点上。
这个bug在动态生成表单时候影响比较大。

解决方法:

  1. 修改input的name, 动态生成不同的name
    curClick.find(".data-class-property").attr("name", "in_required" + Math.round(Math.random() * 1000));
  1. 使用id进行校验
    //校验
    $("#class-data-form").validate({
        rules: {
            name: {
                required: true,
            },
            id:{
                required: true,
            }
            code: {
                required: true,
            },
            type: {
                required: true,
            }
        }, messages:{
            name:{required:'必填字段不能为空'}
        },
        focusCleanup: true
    });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小诺大人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值