JavaScript条件语句仅返回else值

时间:2015-12-01 22:11:25

标签: javascript html5

<script type="text/JavaScript">
function PassTest() {
    var password = document.getElementById("password");
    var message;    
    if (password == "apple") 
    {
        message = "OK";
    } else {
        message = "ERROR";
    }
    document.getElementById("PassTest").innerHTML = message;
}
</script>

<input type="text" id="password"><br>
<input type="button" value="Submit Password" onclick="PassTest()">
<p id="PassTest"></p>

如果密码等于apple,脚本应该基本返回OK,如果密码不等于apple,则返回ERROR。虽然,当我运行脚本时,无论输入如何,我都会收到错误。


 

3 个答案:

答案 0 :(得分:2)

您应该将.value添加到您从document.getElementById

收到的元素中
  document.getElementById("password").value

&#13;
&#13;
function check() {
  password = document.getElementById('password').value
  if (password == 'apple')
    document.getElementById('result').innerText = 'ok';
  else
    document.getElementById('result').innerText = 'Not Ok'
}
&#13;
Enter you password
<input type=password id=password>
<button onclick=check()>check</button>
<div id=result>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

是的,你的代码工作正常,因为在password变量中你存储了dom元素,而不是它的值。您可以测试它添加console.log(password);

var password = document.getElementById("password").value; shoudl是您正在寻找的更新

答案 2 :(得分:0)

[object HTMLInputElement]将返回document.getElementById("password").value ,而您所追求的是所述输入元素的值。您需要访问

中的值
{{1}}