0

我第一次使用 jquery 验证器,通过添加一个方法来验证一个正则表达式的字段。而且我对正则表达式也很陌生:)

$.validator.addMethod(
    "regex",
    function(value, element, regexp) {
        var re = new RegExp(regexp);
        console.log(re.test(value))
        return this.optional(element) || re.test(value);
    },
    "Please enter only allowed characters!"
    );

$("#new_classified_id").validate({

 rules: {
     name: {
         required: true,
         minlength: 2,
         regex: /[^\uXXXX-\uXXXX]/
            }
     //,
     //comment: "required"
        }

});
});

我希望以上内容针对正则表达式检查该字段,以便仅允许正则表达式范围内的字符。范围尚未确定,因此是 uXXXX。如果字符超出范围,我希望显示消息。

目前它正在做完全相反的事情;当我输入允许的字符时,会显示该消息。

4

1 回答 1

0

你应该把'^'放在方括号外面。您目前正在排除该范围内的字符。所以应该是:

   regex: /^[\uXXXX-\uXXXX]/
于 2013-05-16T10:25:22.140 回答