繁体   English   中英

重复元素子代的ID

[英]repeating id's of element children

如果父元素的ID不同,则元素的子元素的ID名称与另一个元素的子元素的ID相同可以吗? 有潜在的冲突吗?

不,元素id在整个文档中应该是唯一的。 document.getElementById()无法与重复的id一起使用(显然,因为它仅返回一个元素)。 现在,您的页面可能可以使用重复的id正常工作,这不像浏览器会崩溃或拒绝呈现页面或其他任何东西,但这不是正确的HTML。

如果需要非唯一标识符,请使用class属性。 这就是用相同名称标记多个元素的目的。

阅读规格

此属性[id]为元素分配名称。 此名称在文档中必须唯一

这是非常不好的做法,并且可能导致错误。 更好的解决方案是使用类来区分子对象,然后从父ID下降以找到您要查找的元素。

无论在HTML还是Javascript的上下文中,ID都应该始终是唯一的。 使用唯一的标识符会更好。 例如,您有多个ID为“ foo”的元素。 document.getElementById(“ foo”)中的ID将仅返回该ID的第一个实例。

如果您具有相同ID的不同DOM元素,则有时会导致麻烦……甚至以为它可能会起作用就不要这样做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM