我正在尝试制作一个查找特定值模式的jquery验证规则。但是我遇到了误报的问题。
这是我的规则
Query.validator.addMethod("eidFormat", function (value, element) {
var a1formatChk = /[^b-z]\d{5}|\d{6}$/.test(value);
return e1formatChk;
}, "Your oder code needs to be your employee id. Please try again.");
我要找的值必须是5位或6位数。此外,我正在添加关于字段更改的规则。要么他们需要添加他们的员工ID,要么留空,我在后端添加系统生成的id。
这是我遇到的问题
如果我输入b1234,它会失败并给我留言 但如果我像fgkhjkjfhg54645那样放入垃圾,那么测试就会恢复正常。
我认为这更像是一个模式问题,但我不确定。
任何帮助将不胜感激
答案 0 :(得分:3)
请注意,[^b-z]
会匹配任何字符(包括非字字符),但不匹配b
到z
。所以改变你的正则表达式,
^a\d{5,6}$
<强>解释强>
^
断言我们刚开始。a
匹配文字a。\d{5,6}
将允许5或6位数。$
断言我们到底。 li>