对getElementById的onload调用返回null

时间:2011-11-22 19:07:13

标签: javascript html

我看了,但没有找到我在这里的情况 - 很多先前的答案说'等待'onload'来调用getElementById'但这就是我开始使用它并且它不起作用 - getElementById在我的index.php文件中的此代码中返回null:

<html>
<script type="text/javascript">

    function checkPwd()
    {
        var thePwd = document.getElementById("theUsersPassword");
        alert("the var thePwd is: " + thePwd);

    }
</script>        
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Beta:</title>
</head>

<body onload="checkPwd()">

  <form method="post"  action="index.php">
    Beta: <input name="theUsersPassword" type="password"><br/>
    <input type="submit" value="Submit" />  
    </form>

</body>
</html>

3 个答案:

答案 0 :(得分:5)

getElementById按ID而不是按名称获取元素。你必须改变

<input name="theUsersPassword" type="password">

<input name="theUsersPassword" id="theUsersPassword" type="password" />

答案 1 :(得分:4)

您正在混淆nameid

修改

换句话说,您需要更改

<input name="theUsersPassword" type="password">

<input name="theUsersPassword" id="theUsersPassword" type="password">

答案 2 :(得分:0)

您可以使用以下代码。 getElementById返回的对象不是值。

的JavaScript

function checkPwd()
{
    var thePwd = document.getElementById("theUsersPassword").value;
    alert("the var thePwd is: " + thePwd);

}

HTML

<input name="theUsersPassword"  id="theUsersPassword"  type="password">