我正在使用以下规则来使用jQuery验证方法验证用户名。我想添加另一个规则,即用户名应该只包含字母数字和下划线字符。 如何为该规则添加其他方法。如果用户提供少于4个字符,那么我可能会打印最小长度错误消息,如果用户提供无效字符,那么我会给出无效字符错误消息吗?感谢。
$(document).ready(function() {
$("#sform").validate({
rules: {
username: {
required: true,
minlength: 4
}
},
messages: {
username: "Minimum length 4.",
}
});
});
答案 0 :(得分:5)
添加如下
jQuery.validator.addMethod("alphanumeric", function(value, element) {
return !jQuery.validator.methods.required(value, element) || /^[a-zA-Z0-9_]+$/i.test(value);
}
, "Letters, numbers or underscores only please");
并在下面申请
$('validatorElement').validate({
rules : {
username : { alphanumeric : true }
}
});
答案 1 :(得分:1)
使用远程ajax验证执行此操作
$("#sform").validate({
rules: {
username: {
required: true,
minlength: 4,
remote: 'alphanumertic.php'
//check on server
}
},
messages: {
username: "Minimum length 4.",
}
});
可能最好的方法是使用可在
上找到的正则表达式进行验证jQuery validate: How to add a rule for regular expression validation?
答案 2 :(得分:1)
验证插件附带了additional-methods.js,其中包括字母数字和下划线验证:
http://ajax.aspnetcdn.com/ajax/jquery.validate/1.10.0/additional-methods.js
与上述规则相同:
$('validatorElement').validate({
rules: {
username: { alphanumeric : true }
}
});
答案 3 :(得分:0)
旧问题,但我正在添加我的答案,以便可以获得帮助
可以使用以下内容:
使用以下签名创建一个封装我们的验证测试的函数:
function mytest(value, element, params){...}
在我们建立了函数之后,我们可以将它附加到jQuery Validation插件。为此,我们调用验证器对象的addMethod()函数。
我的代码:
$(document).ready(function() {
// other code
// :
// :
$.validator.addMethod(
"passwd",
function(value, element, regexp) {
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
},
"Invalid input"
);
$("#add_user_form").validate({
rules:{
user_name: {
required: true,
minlength: 5,
maxlength: 15,
noSpace: true
},
password: {
required: true,
minlength: 8,
passwd: "((?=(.*\\d.*){2,})(?=(.*[a-zA-Z].*){2,})(?=(.*[@#$(){}!~,.!^?/|+=-_%].*){2,}).{8,20})"
}
},
messages:{
user_name: {
required: "*",
minlength: " at least 5 characters",
maxlenght: " only 15 characters",
noSpace: " No space Please"
},
password: {
required: "*",
minlength: " Your password must be at least 8 characters long",
passwd: " Invalid Password choice"
}
});
//
// more code in document.ready
良好的链接:
Starting With jQuery - How to Write Custom Validation Rules
How to add a rule for regular expression validation?