检查密码-代码中的错误在哪里

Check password - Where is the error in code?

本文关键字:错误 在哪里 代码 密码 检查      更新时间:2024-01-24

密码验证码,但不起作用。。我的代码中的错误在哪里?

JS:

function checkPass() {
var pass = document.getElementById('pass');
var pass2 = document.getElementById('pass2');
if(pass != pass2) {
document.layers.passResponse.innerHTML = "Passwords did not Match!";
} else {
document.layers.passResponse.innerHTML = "Passwords Match!";
}
}

HTML:

<div class="form-left">Password * </div>
<div class="form-right"><input type="password" id="pass" name="pass" class="form-input" /></div>
<div class="form-left">Confirm Password *</div>
<div class="form-right"><input type="password" id="pass2" name="pass2" class="form-input" /></div>

您比较的是两个html元素,而不是它们的值。

if(pass1 != pass2) {

应该是

if(pass1.value != pass2.value) {

首先,您尝试比较两个输入元素,而不是它们的值。您需要访问它们的值属性。您还应该尽可能使用严格的比较运算符。

if ( pass1.value !== pass2.value )

其次,您正在尝试使用document.layers,这是Netscape 4中的专有属性。

你需要一个更现代的指南,试试W3C的JavaScript核心技巧,关于遍历DOM的部分涵盖了你正在处理的领域(但如果你一直在使用提到layers的指南,你可能会从一开始就受益)。

if(pass.value != pass2.value) {
document.layers.passResponse.innerHTML = "Passwords did not Match!";
} else {
document.layers.passResponse.innerHTML = "Passwords Match!";
}
}

使用上面的代码。