我正在尝试使用javascript验证密码,这是为了确保在更改密码时输入的新密码等于重新输入新密码的密码(要求用户输入新密码两次,所以两者都必须匹配)但同时,我想确保新密码至少6个字符长,我分别有这些功能,但不知道如何组合它们...感谢您的帮助前进!</ p>
这就是我到目前为止......
这是为了确保新密码匹配:
function validatePassword()
{
var new_password = document.getElementById("new_password").value;
var confirm_new_password = document.getElementById("confirm_new_password").value;
<!-- if they match, go to next page -->
if ( new_password == confirm_new_password)
{
return true;
}
<!-- if they don't match, an error message is displayed -->
else
{
alert("Passwords do not match.");
}
return false;
}
这是密码的长度:
function validatePassword()
{
if (document.getElementById("new_password").value.length < "5")
{
<!--If pasword is less than 5 characters long, display error message-->
alert("Please ensure your password is at least 6 characters long.");
return false;
}
return true;
}
如何将这两者组合成一个SINGLE函数,检查两个新密码是否匹配,还检查它们是否超过6个字符?
答案 0 :(得分:1)
要结合你的两个功能,这将有效:
function validatePassword()
{
var new_password = document.getElementById("new_password").value;
var confirm_new_password = document.getElementById("confirm_new_password").value;
if (new_password.length < 5)
{
<!--If pasword is less than 5 characters long, display error message-->
alert("Please ensure your password is at least 6 characters long.");
return false;
}
else if ( new_password != confirm_new_password)
{
alert("Passwords do not match.");
return false;
}
else
{
return true;
}
}
虽然我同意,但有更好的程序。并且请确保您正在进行服务器端验证,因为客户端验证很容易被忽略。
答案 1 :(得分:0)
我不确定但你可以在
中调用validatePassword()
这个功能
if ( new_password == confirm_new_password)
{
validatePassword();
}
答案 2 :(得分:0)
您有两个选项,要么将这两个功能作为一个功能,要么将它们作为两个单独的功能,并在提交/处理表单之前调用它们。
if (validatePasswordLength() && validatePasswordsMatch()) {
// Continue
}
答案 3 :(得分:0)
你必须尝试这个小而且有效的代码。
if(document.getElementById("new_password").value != document.getElementById("confirm_new_password").value){
alert("Passwords do not match.");
return false;
}
答案 4 :(得分:0)
<script>
function validatePassword()
{
var new_password = document.getElementById("new_password").value;
var confirm_new_password = document.getElementById("confirm_new_password").value;
if (document.getElementById("new_password").value.length < "5")
{
alert("Please ensure your password is at least 6 characters long.");
return false;
}
if (new_password == confirm_new_password)
{
alert("Password no match");
return false;
}
return true;
}
</script>
<form action="" onsubmit="return validatePassword()">
<p>New Password: <input type="password" id="new_password" name="new_password" /></p>
<p>Confirm Password: <input type="password" id="confirm_new_password" name="confirm_new_password" /></p>
<p><input type="submit" value="submit" /></p>
</form>