我的jQuery验证器自定义方法需要一些RegEx。我认为第一个容易的只是将用户名限制为只有美国字母,数字和没有特殊字符。我想出了^[a-zA-Z0-9]+$
,但似乎没有用。也许是因为它出现在函数中的方式:
$.validator.addMethod(
"legalName",
function(value, element) {
return (element.value != "^[a-zA-Z0-9]+$");
},
"Use a valid username."
);
第二种是验证密码,这与增加所需数量的某些字符(如大写,数字等)基本相同。我想,一旦我得到用户名RegEx,密码就不会太难,只需要在{1}
中拟合等等。
我的问题的最后一部分是如何在原始.addMethod
中添加第二种方法(“legalPassword”),还是需要创建另一种方法$.validator.addMethod
?
$(document).ready(function() {
$("#form1").validate({
rules: {
username: {
legalName: true,
required: true,
maxlength: 35
}
},
});
});
和表格代码:
<form id="form1" method="post" action="">
<div class="form-row"><span class="label">Username *</span><input type="text" name="username" /></div>
<div class="form-row"><input class="submit" type="submit" value="Submit"></div>
</form>
新代码(仍无效):
$.validator.addMethod(
"legalName",
function(value, element) {
/^[a-zA-Z0-9]+$/.test( value );
},
"Use a valid username."
);
答案 0 :(得分:5)
return this.optional(element) || /^[a-zA-Z0-9]+$/.test( value );
答案 1 :(得分:2)
尝试使用Regex.test函数来检查字符串。
/^[a-zA-Z0-9]+$/.test( element.value );
有关详细信息,请参阅此处:http://www.javascriptkit.com/javatutors/redev3.shtml
答案 2 :(得分:0)