Javascript document.getElementByID(...)为NULL

时间:2014-04-09 17:09:02

标签: javascript html

我在Javascript中遇到了问题。 我想在点击链接时将文本输入的值设置为特定值。

<form method="get" action="db.php">
<dl>
    <dt>
        Part:
    </dt>
    <dd>
        <input type="text" name="part"></input>
    </dd>
....
....  
<a href="#" onClick="document.getElementById('part').value = 'motor';">motor</a>   

但是

TypeError: document.getElementById(...) is null    
出现

错误

它有什么不对吗?

3 个答案:

答案 0 :(得分:3)

getElementByIdid找到一个元素。你的dom样本中没有id = part的元素。这就是它返回null的原因。您可以使用document.getElementsByName(string)并返回包含指定名称的elemtns的数组,在您的can中,0索引获取input标记!

<a href="#" onClick="document.getElementsByName('part')[0].value = 'motor';">motor</a> 

它会返回array,所以得到第一个元素。如果你在函数上检查它,如果得到一些结果并应用value属性,那就太好了。

答案 1 :(得分:2)

只需将id添加到输入标记,然后就可以使用getElementById(&#39; part&#39;)

<input type="text" name="part" id="part"></input>

答案 2 :(得分:0)

您的<a>的名称为“部分”,而不是ID。因此,页面上没有ID为“part”的元素,这就是为什么你得到一个null结果。