如何删除div列表之一

时间:2013-07-09 23:50:26

标签: jquery html

这是我的代码。

<div id="list"> <div class="a">1</div><div class="b">1</div></div>
<div id="list"> <div class="a">2</div><div class="b">2</div></div>
<div id="list"> <div class="a">3</div><div class="b">3</div></div>
<div id="list"> <div class="a">4</div><div class="b">4</div></div>

我需要删除

<div id="list"> <div class="a">3</div><div class="b">3</div></div>

I tried $('#list[2]').remove() but it doesn't work. Help me, please. 

4 个答案:

答案 0 :(得分:2)

最好不要使用相同的ID,因为ID是唯一的,所以会弄乱你的文档,而是使用Class:

<div class="list"> <div class="a">1</div><div class="b">1</div></div>
<div class="list"> <div class="a">2</div><div class="b">2</div></div>
<div class="list"> <div class="a">3</div><div class="b">3</div></div>
<div class="list"> <div class="a">4</div><div class="b">4</div></div>

通过以下方式访问:

$('div[class="list"]').eq(2).remove(); 

或者:

$('.list').eq(2).remove();

您看到eq(2)因为元素开始从0计算,所以2是您的第三个元素list类。

答案 1 :(得分:0)

id="list"替换为class="list"并尝试

$(".list:contains('3')").remove();

答案 2 :(得分:0)

id进行多次迭代会导致页面出现问题。将它们更改为class属性并随意操作!

http://jsfiddle.net/q5Wuh/

随意添加点击事件

http://jsfiddle.net/qcGHR/

答案 3 :(得分:0)

如果您将使用eq(2),它将删除索引2处的div并记住index为0基于零。

对于通用答案,请尝试以下代码。

$('.a:contains(3)').parent().remove()

无论你需要搜索什么,都要在contains中指定为参数。在这里我们应该搜索'3',所以我们将其传递为3。

注意:还要记住,在DOM中,id应该是唯一的。这是第一个也是最重要的规则。

选中此Demo