您的位置:首页 > 其它

document.getElementById 你真正了解了吗?

2011-12-14 21:45 239 查看
text1:

<input name="textName1" type="text" id="textName2" />

<br>

text2:

<input name="textName2" type="text" id="textName1" />

<br>

<input type="button" name="Submit" value="text1" onclick=alert(document.getElementById('textName2').value) />

<input type="button" name="Submit2" value="text2" onclick=alert(document.getElementById('textName1').value) />

我在IE中测试了上面的代码,在第一个文本框中输入1,在第二个文本框中输入2,然后点下面的两个按钮,猜一下结果是什么?
我本意是按钮1返回第一个文本框的值,按钮2返回个文本框的值。

结果是两个按钮都返回了第一个文本框的值。

说明ie执行document.getElementById(elementName)的时候,返回的是第一个name或者id等于elementName的对象,并不是按照ID来查找的。

在fireFox中不存在这样的问题,fireFox执行document.getElementById(elementName)的时候只查找id等于elementName的对象,如果不存在则返回null。

可能IE是考虑的兼容性的问题才这么做的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: