- 主题:两个button使用同一个Id浏览器也不会报错,那么为什么说Id不能
网上都说,页面空间的name可以重复,但是Id不能重复,因为document.getElementById不允许重复。
但是我用chrome做了一个实验,看起来并不会报页面错误:
<html>
<head></head>
<button id="btn01" name="btn01"></button>
<button id="btn01" name="btn01"></button>
<script lang="javascript">
alert(document.getElementById("btn01"));
</script>
</html>
载入这个页面,会弹出一个窗口说[object HTMLButtonElement]
初次意外并没有错误发生,浏览器也没有任何错误提示。
为什么会是这样呢,ID不能重复,到底体现在什么地方, 什么时候会导致问题?
name重复不会导致问题,那么id重复为什么就会导致问题?
--
FROM 123.123.248.*
1)点的第二个按钮吗?
2) The result is undefined. So the browser is free to do anything, which sometimes may look correct.
【 在 sedelick (sedelick) 的大作中提到: 】
: 网上都说,页面空间的name可以重复,但是Id不能重复,因为document.getElementById不允许重复。
: 但是我用chrome做了一个实验,看起来并不会报页面错误:
: <html>
: ...................
--
FROM 209.51.90.*
id当然应该是唯一的,不过不同的浏览器对事件的反应应该会不同~
--
FROM 106.120.122.*
specification也只是说,这东西must be unique in a document,并没有说duplicate
会有什么后果。
然浏览器基本都没太拿规范当一回事,各家都按自己的理解来实现,
所以对于这个重复的id,自己非要这么写,就自己负责吧,至少多找几种测测。
【 在 shirleyxu18 (shirleyxu18) 的大作中提到: 】
: id当然应该是唯一的,不过不同的浏览器对事件的反应应该会不同~
--
FROM 106.37.236.187
观点很赞同,结果并不能预知,如果对这个id没有绑定事件的话,基本不会触发问题。
【 在 shaolin 的大作中提到: 】
: specification也只是说,这东西must be unique in a document,并没有说duplicate
: 会有什么后果。
: 然浏览器基本都没太拿规范当一回事,各家都按自己的理解来实现,
: ...................
--
FROM 106.120.122.*