【发布时间】:2018-01-13 14:17:22
【问题描述】:
它不能正常工作,我得到密码不匹配!对于我用字母、数字和大写字母编写的每个密码
var reg = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).*$"/;
var pass = document.getElementById("password").value;
if (pass == "") {
alert("Enter the user password");
document.getElementById("password").focus();
return false;
}
if (pass.length < 8) {
alert("Password too short, at least 8 characters");
document.getElementById("password").focus();
return false;
}
var pasw = pass.match(reg);
if (pasw) {
alert("Password is valid");
} else {
alert("Password doesn't match!");
return false;
}
【问题讨论】:
-
您能否澄清您的问题并正确格式化您的帖子?
-
输出是什么?也使用 if(pass) 而不是 if(pass=="") 因为 javascript 强制传递给布尔值,如果传递为 null、空或未定义,则不会进入 if 循环。
-
@loki pasw 是一个布尔值问题出在代码的最后一部分,我需要获取匹配方法密码有效如果我写的密码包含大写、小写和数字,但我总是得到密码不匹配!
-
@NicoHaase 我需要获取密码有效如果我写的密码包含大写、小写和数字,但我总是得到密码不匹配!
-
也许你应该验证你的正则表达式
标签: javascript passwords match