我正在创建一个网站,并且通过php显示html,其中包含从数据库获取的数据。
我有一个foreach()函数,所以显示的所有东西都有相同的DIV ID。
它最终就像具有相同ID(#content)的4个DIV,所以PHP工作正常,但我有一个jQuery脚本,当我调用jQuery("#content").hide();
时,它只隐藏了一个DIV而不是全部,我希望它隐藏所有这些。我还有别的办法吗?
感谢。
答案 0 :(得分:6)
你应该使用一个类(.class_name
),而不是一个id - 只有一个DOM元素可能有一个给定的ID,否则它是无效的HTML。 ID选择器只返回一个元素是合理的。
答案 1 :(得分:2)
页面上元素的ID应该是唯一的。因此,您指定的每个HTML标记都应具有不同的ID。如果要隐藏所有某个元素,可能适合将类添加到要隐藏的元素中?
e.g。
<div class="divToHide">Content...</div>
<div class="divToHide">Content...</div>
<div class="divToHide">Content...</div>
然后你的jquery将是:
$(".divToHide").hide();
答案 2 :(得分:1)
这只是因为您不能拥有多个具有指定ID的元素。 ID是并且必须是唯一的。 DOM中可能只存在一个具有相同元素的单个元素。
不遵守此规则可能会导致脚本损坏和其他恐怖行为。
您可以使用类来实现此目的。
答案 3 :(得分:1)
ID只能在HTML中使用 ONCE !因为它的id和id应该始终是唯一的