搞砸了getElementById Javascript

时间:2014-10-09 16:18:11

标签: javascript getelementbyid

我已经写了这段代码 -

<!DOCTYPE html>
<html>
<head>
    <script type="text/javascript">
        function validateForm(){
            var x = document.getElemetnById('pass1');
            var y = document.getElemetnById('pass2');
            if(x != y){
                document.write("Password Must Match");
            }else{
                document.write("match!");
            }
            return false;
       }
    </script>
</head>

<body>
    <p id="pass1">123</p>
    <p id="pass2">123</p>
</body>

</html>

如果pass1pass2相同,我想要它,然后打印出match字。 什么是正确的代码??

2 个答案:

答案 0 :(得分:1)

X和Y是DOM中的不同元素,因此x != y将始终为真。

您想要比较这些元素的TEXT,而不是元素本身。请尝试检查x.innerText != y.innerText

答案 1 :(得分:0)

两件事:

  • 你拼错了getElemetnById,应该是getElementById
  • 您正在比较DOM元素,而不是这些元素的内容。

完整的工作代码如下所示:

<!DOCTYPE html>
<html>
<head>
    <script type="text/javascript">
        function validateForm(){
            var x = document.getElementById('pass1');
            var y = document.getElementById('pass2');
            if(x.innerHTML != y.innerHTML){
                document.write("Password Must Match");
            }else{
                document.write("match!");
            }
            return false;
       }
    </script>
</head>

<body>
    <p id="pass1">123</p>
    <p id="pass2">123</p>
</body>

</html>

这是测试它的链接:http://jsfiddle.net/cretueyr/