【发布时间】:2018-05-07 00:56:59
【问题描述】:
您好,我必须验证密码并确认密码,我的限制是当我访问页面时,确认密码文本框应该被禁用,
当我点击只为密码字段提交所需消息时,它不应该验证确认密码,
当我在密码字段中输入正确的密码时,应启用确认密码字段
正确的密码意味着它应该包含至少8个字符,1个大写字母,1个小写字母,1个数字,1个特殊字符
输入确认密码后点击检查应该验证两者是否相同
<form id="formCheckPassword">
<input type="password" name="password" id="password"/>
<p id="passerror"></p>
<br>
<input type="password" name="cfmPassword" id="cfmPassword" disabled /><br>
<input type="submit" value="submit" id="s"/>
</form>
jQuery
$(document).ready(function() {
$("#s").click(function(event) {
var passerror = "";
var pass = $.trim($("#password").val());
if (pass == "") {
passerror = "pass is required";
$("#passerror").html(passerror);
$("#passerror").show();
event.preventDefault();
}
if(pass!= cfmPassword)
{
display error message
}
else
{
}
});
$("#password").focusout(function(){
var pwd=$("#password").val();
var errorMessage = "";
function isValidPassword(emailAddress) {
var pattern = new RegExp(/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{8,}$/);
return pattern.test(emailAddress);
};
if (!isValidPassword(pwd.val())) {
errorMessage = "<br />Please enter a valid email address";
$("#error").html(errorMessage);
$( "#error" ).show();
event.preventDefault();
}
});
});
css
#passerror{
color: red;
}
任何人都可以更新代码
【问题讨论】:
-
不建议在你的js端验证它,它可以轻松绕过你的后端验证它
-
@Beginner 我的解释是客户端验证只会确保密码符合密码规则,并且匹配验证字段。实际检查密码是否正确将在服务器端完成。
标签: jquery