【发布时间】:2010-04-22 02:57:58
【问题描述】:
我有两个具有相同 ID 的 div,但一个具有 display=none,另一个具有 display=block 我想用 display='none' 删除那个 我正在使用 javascript 框架 原型
【问题讨论】:
-
您可能应该将 id 切换到 classes。 ID 应该只用于唯一元素(即只有一个)。
标签: javascript
我有两个具有相同 ID 的 div,但一个具有 display=none,另一个具有 display=block 我想用 display='none' 删除那个 我正在使用 javascript 框架 原型
【问题讨论】:
标签: javascript
你不能有两个具有相同 ID 的控件,这是无效的。您应该重写您的代码,使 ID 不一样。
【讨论】:
您应该改用 div 类而不是 id 类。 ID 是唯一标识符,因此是唯一的,一个页面每个 id 只能包含一个元素(一个 id 不能有多个元素)。
如果你给了 div 类而不是 id,你可以这样做:
$$(".<your_class_here>").reject(Element.visible).each(Element.remove);
我的原型有点生锈,但我认为应该这样做。
编辑:忘了你不能直接按 CSS 属性过滤。
【讨论】:
ids,而且您的id 甚至都不是有效名称(您不能以数字开头)。 说真的,你需要解决这个问题,否则你会遇到很多奇怪的浏览器错误行为。
您不应该有两个具有相同 ID 的元素。你应该使用类。
【讨论】: