JavaScript条件语句仅返回else值 函数PassTest(){ var password=document.getElementById(“密码”); var消息; 如果(密码==“苹果”) { message=“确定”; }否则{ message=“ERROR”; } document.getElementById(“PassTest”).innerHTML=消息; }

JavaScript条件语句仅返回else值 函数PassTest(){ var password=document.getElementById(“密码”); var消息; 如果(密码==“苹果”) { message=“确定”; }否则{ message=“ERROR”; } document.getElementById(“PassTest”).innerHTML=消息; } ,javascript,html,Javascript,Html,如果密码等于apple,脚本基本上应该返回OK,如果密码不等于apple,则返回ERROR。尽管如此,当我运行脚本时,无论输入如何,都会出现错误 您应该将.value添加到从document.getElementById <script type="text/JavaScript"> function PassTest() { var password = document.getElementById("password"); var message;

如果密码等于apple,脚本基本上应该返回OK,如果密码不等于apple,则返回ERROR。尽管如此,当我运行脚本时,无论输入如何,都会出现错误



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

<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>
函数检查(){
password=document.getElementById('password')。值
如果(密码=='apple')
document.getElementById('result').innerText='ok';
其他的
document.getElementById('result')。innerText='notOK'
}
输入密码
检查

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


var password=document.getElementById(“密码”).value
应该是您正在查找的更新文档。getElementById(“密码”)
将返回一个
[object HTMLInputElement]
,而您所要的是所述输入元素的值。您需要访问中的值

  document.getElementById("password").value

它应该是
password.value
,按钮
文档的属性。getElementById(“password”)
返回分配给var密码的DOM元素。然后将DOM元素与字符串进行比较——它们永远不会相等。我投票结束这个问题,因为它是由一个无法再复制的问题或一个简单的印刷错误引起的。虽然这里可能有类似的问题,但这个问题的解决方式不太可能帮助未来的读者。@ZakariaAcharki这个问题可以复制,并且不是印刷错误。你确定这个问题的答案可以帮助未来的读者吗?你不知道我有多放心。非常感谢。
document.getElementById("password").value