Jquery 不会将 hide() 应用于所有具有相同 ID 的 div



我正在制作一个网站,html通过php显示从数据库获取的数据。我有一个foreach()函数,因此所有显示的内容都具有相同的DIV ID。它最终是像4 DIV相同的ID(#内容),所以PHP工作得很好,但我有一个jQuery脚本,当我调用jQuery("#content").hide();它只隐藏一个DIV的不是全部,我想要它隐藏所有的。我还需要做什么吗?谢谢。

您应该使用类(.class_name),而不是id——只有一个DOM元素可以有给定的id,否则它是无效的HTML。ID选择器只返回一个元素是合理的。

页面上元素的id必须是唯一的。因此,您指定的每个HTML标记都应该具有不同的ID。如果您想要隐藏某个元素的所有内容,那么为您想要隐藏的元素添加一个类可能比较合适。

<div class="divToHide">Content...</div>
<div class="divToHide">Content...</div>
<div class="divToHide">Content...</div>

那么你的jquery将是:

$(".divToHide").hide();

这仅仅是因为您不能有多个具有指定ID的元素。id是且必须是唯一的。一个DOM中只能存在一个具有相同元素的元素。

不遵守此规则可能会导致脚本破碎和其他恐怖。

一个ID只能在HTML中使用一次 !因为它是一个id id必须是唯一的

最新更新