对包含前导零的名称的元素进行jquery验证

时间:2013-12-08 17:57:56

标签: jquery forms jquery-validate

jQuery Validation plugin rules是否有办法处理名称中包含前导零的表单输入元素?

这很好......

first_name: {required: true, minlength: 2},

但这会锁定脚本......

00ND0000005Rtcx: {min: 10, digits: true},

元素名称周围的引号和括号也会锁定脚本,我对表单输入元素名称没有选择 - 插件只允许元素名称作为规则选择器

我想我可以复制表单,使用一组不同的命名输入元素,然后将结果更新为要发布的“真实表单”字段 - 但这会带来相当大的复杂性。

2 个答案:

答案 0 :(得分:1)

您只需引用您的姓名即可使其正常运作。你声称这个锁定了#39;脚本,但我认为你必须以某种方式做错:

$('form').validate({
   rules: {
      first_name: {required: true, minlength: 2},
      '00ND0000005Rtcx': {min: 10, digits: true}
   }
});

这就是全部!

正如Sparky所说,名称和ID不应该以数字开头,但我的经验是,所有浏览器都可以处理以数字开头的name属性,而不是id

如果还有其他问题,那么提供更多信息对您非常有帮助 - 使用调试器找出确切的错误消息。向我们展示表格的相关部分。向我们展示更多相关的jQuery。

以下是类似内容的工作示例:http://jsfiddle.net/ryleyb/3J4bp/1/

请注意,您的编号字段是必填字段,除非已填写,否则表单将不会提交。

答案 1 :(得分:0)

由于规则参数块似乎不喜欢名称以前导零开头的元素 - 而且我没想过按照@Riley上面的答案包装规则参数 - 我已经将规则内联移动了,所以这验证了OK ...

<input id="00ND0000005Rtcx" name="00ND0000005Rtcx" style="width: 150px;" type="text" minlength="15" maxlength="15" title="Enter your 15-character reference" required="true" />