getElementById和getElementsByName的不同

<input type="text" onClick="f()" id="xx" value="ddd"/>
<script type="text/javascript">
function f(){
var xx = document.getElementById("xx");
xx.value = "";
}
</script>
上面代码中,把id改为Name就不行了。如下:
<input type="text" onClick="f()" Name="xx" value="ddd"/>
<script type="text/javascript">
function f(){
var xx = document.getElementsByName("xx");
xx.value = "";
}
</script>

有高人能告诉我为什么用id就可以,用name就不行呢?这两者有什么不同。

getElementsByName() 得到的是一个array, 不能直接设value,应该取相应的OBJECT来赋值. 设置如下:

<input type="text" onClick="f()" Name="xx" value="ddd"/>
<script type="text/javascript">
function f(){
var xx = document.getElementsByName("xx");
xx[0].value = "";
}
</script>

getElementById 得到的就是有特定ID的哪个OBJECT, 可以立即赋值
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答