我以为我可以使用相同的类遍历所有div:
$("#section").each(function(i){
alert ($(this).text());
});
然而,当我运行这个时,我只收到第一个div的警告。
有人可以告诉我做错了吗?
我创建了一个显示问题的FIDDLE。
由于
答案 0 :(得分:1)
ID仅限于一个..它们必须是唯一的。
您需要将ID更改为类并再次迭代。
答案 1 :(得分:1)
你不能在dom中拥有多个具有相同id的元素。在这种情况下,您应该使用class而不是id。
$(".section").each(function(i){
alert ($(this).text());
});
答案 2 :(得分:0)
首先,我建议不要为每个Div使用相同的ID。如果是,则使用如下:
$("div[id='section']").each(function(i){
alert ($(this).text());
});
我建议在Div ID中使用一些post修复。用作
$("div[id$='section']").each(function(i){
alert ($(this).text());
});
或使用部分作为课程名称,如下面演示
答案 3 :(得分:0)
#
是jQuery中的ID选择器。要使用类选择器,您必须使用.
。
试试这样:
$(".section").each(function(i){
alert ($(this).text());
});
注意: section
是您的常用班级名称。
答案 4 :(得分:0)
尝试此操作而不更改您的ID或类 $(“#container ul li”)。each(function(i){
alert ($(this).text());
});
答案 5 :(得分:0)
<div class="aid" style="width:600px; margin: 50px auto 0">
<div id="container" >
<ul id="list">
<li>
<div class="section" >
<a href='#' id='show' class='tooltip'>1</a>
<div class='slide' style='display:block; display:none;'>
</div></div>
</li>
<li>
<div class='section'>
<a href="#" id="show" class='tooltip'>2</a>
<div class="slide" style="display:block; display:none;">
</div></div>
</li>
<li><a href="faq.php" class="tooltip" id='other'>3</a></li>
<li>
<div class='section'>
<a href="#" id="show" class='tooltip'>4</a>
<div class="slide" style="display:block; display:none;">
</div></div>
</li>
<li>
<div class='section'>
<a href="#" id="show" class='tooltip'>5</a>
<div class="slide" style="display:block; display:none;">
</div></div>
</li>
<li>
<div class='section'>
<a href="#" id="show" class='tooltip'>6</a>
<div class="slide" style="display:block; display:none;">
</div></div>
</li>
</ul>
</div>
</div>
$(".section").each(function(i){
alert ($(this).text());
});
答案 6 :(得分:0)
问题是,你在div中使用了Id属性。在dom元素中,Id应该是唯一的,这就是它为第一个div提供警报的原因。将其更改为类,然后更改代码。
$(".section").each(function(i){
alert ($(this).text());
});