![](/img/trans.png)
[英]Regex for password must contain at least eight characters, at least one number and both lower and uppercase letters and special characters
[英]jQuery Validation - password MUST contain uppercase and number
所以在我的注册表格中我有这个字段:
<div class="form-group">
<label for="RegisterModel_Password">Password</label>
<input type="password" id="RegisterModel_Password"
name="RegisterModel.Password" class="form-control"
required="required" minlength="8"/>
</div>
如您所见,我正在使用jQuery验证属性来确保密码至少包含8个字符。 所以,我想检查密码是否包含大写和数字,如果没有,则字段无效。 我下载了名为“ pattern ”的jQuery Validation插件的附加方法,并将她添加到head标签中。
我尝试按照以下方式执行此操作,但它没有奏效。
$("#formRegister").validate({
rules: {
RegisterModel_Password: {
pattern: /^[a-zA-Z][0-9]/
}
}
});
我认为模式是错误的,但我不确定使用是否正确。 谢谢您的帮助。
正则表达的链对我来说太难了(我从来没有试过去学习它们)。 所以这是我的解决方案:
jQuery.validator.addMethod("passwordCheck",
function(value, element, param) {
if (this.optional(element)) {
return true;
} else if (!/[A-Z]/.test(value)) {
return false;
} else if (!/[a-z]/.test(value)) {
return false;
} else if (!/[0-9]/.test(value)) {
return false;
}
return true;
},
"error msg here");
简单地说,我就像一个属性一样使用它:
<input type="password" id="RegisterModel_Password"
name="RegisterModel.Password"
class="form-control"
required="required" minlength="8"
passwordCheck="passwordCheck"/>
谢谢你的回答。
您可以使用$.validator.addMethod()
添加自定义验证,如:
$.validator.addMethod("validation_name", function(value) {
// at least 1 number and at least 1 character
[^\w\d]*(([0-9]+.*[A-Za-z]+.*)|[A-Za-z]+.*([0-9]+.*))
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.