【发布时间】:2018-08-17 09:53:30
【问题描述】:
假设有 3 次相同的 ID,我想删除除一个以外的所有 ID。 示例:
<div id = "parent_id">
<div id = "id_1">
<div id = "id_1-1"> </div>
<div id = "id_1-1"> </div> // I want to delete this
<div id = "id_1-1"> </div> // I want to delete this
<div id = "id_1-2"> </div>
<div id = "id_1-2"> </div> // I want to delete this
<div id = "id_1-2"> </div> // I want to delete this
</div>
<div id = "id_2">
<div id = "id_2-1"> </div>
<div id = "id_2-1"> </div> // I want to delete this
<div id = "id_2-1"> </div> // I want to delete this
<div id = "id_2-2"> </div>
<div id = "id_2-2"> </div> // I want to delete this
<div id = "id_2-2"> </div> // I want to delete this
</div>
<div id = "id_3">
<div id = "id_3-1"> </div>
<div id = "id_3-1"> </div> // I want to delete this
<div id = "id_3-1"> </div> // I want to delete this
<div id = "id_3-2"> </div>
<div id = "id_3-2"> </div> // I want to delete this
<div id = "id_3-2"> </div> // I want to delete this
</div>
</div>
可以用 for 循环来完成吗? 提前致谢!
【问题讨论】:
-
标记周期错误!
-
这首先不应该发生。元素 ID 应唯一。
-
Id 应该是唯一的。您的 html 标记错误。
-
在某些浏览器上可能是可行的。但是,正如其他人在这里指出的那样,拥有多个具有相同 id 的元素是非法的,因此浏览器的行为不会标准化,并且代码可能随时中断。
-
注意:
document.querySelectorAll('#id_1-1')(和 jQueery 等价物)将返回所有这些元素 - 但它仍然是不好的做法并且在技术上无效标记
标签: javascript jquery