此代码检查输入的密码是否包含最小8个字符。我想检查密码是否有特殊字符。如果没有特殊字符,用户必须提示输入特殊字符和数字。 Jquery代码是:
jQuery(document).ready(function () {
jQuery("#changePasswordForm").validate({
rules: {
oldPassword: {
required: true
},
password: {
required: true,
minlength: 8
},
password2: {
required: true,
equalTo: "#password1", minlength: 8
}
}
});
});
jQuery.extend(jQuery.validator.messages, {
required: "<span>This field is required.</span>",
equalTo: "<span>Please enter the same value again.</span>",
minlength: jQuery.validator.format("<span>Please enter at least {0} characters.</span>")
});
答案 0 :(得分:1)
要检查字符串是否包含特定字符,可以使用正则表达式。
通过使用regExp,您还可以选择接受哪些特殊字符。
您可以将正则表达式调整为变量
var regExp = /[*listofyourspecialcharacters*]/;
或您可以直接使用
/[*listofyourspecialcharacters*]/.test(*yourstring*);
测试方法搜索作为参数给出的字符串,如果正则表达式匹配,则返回true,即,如果找到特殊字符,则返回false。
因此,当您点击确认按钮或输入字段的值发生变化时,您可以轻松检查用户输入。
e.g:
$("#acceptButton").click(function(){
var regExp = /[_\-!\"@;,.:]/;
if(!regExp.test($('#password1').val())){
*askForNewPassword();*
} else {
*carry on()*;
}
};
编辑:reg exp中的打开和关闭括号(&#39; [&#39;,&#39;]&#39;)不是检查字符串的字符的一部分。它们只保存您要使用的字符列表。如果要使用它们,则需要使用转义符号:
var regExp = /[;:_\-!@\"\]\[]/;