我有一个这样的布局:
<div id='parent'>
<div id='row_0'></div>
<div id='row_1'></div>
<div id='row_2'></div>
...
<div id='row_N'></div>
</div>
在某些情况下,我想删除某个索引上的所有div“行”,比如:
for (var index = 1; index < $('#parent').children.length; index++) {
$('#parent').remove('#row_' + index);
}
在jquery中有没有更简单的方法来做到这一点?比如“删除从索引N开始的所有子项”?
(上面的for循环不会真正起作用,但如果没有其他方法,我会这样做)
发布于 2010-08-04 03:39:19
“从元素N
开始,移除(分离) #parent
的所有子元素”:
$("#parent").children().slice(N).detach();
如果不打算重新插入元素,请使用remove()
而不是detach()
,以便丢弃与删除的元素关联的数据和事件。
发布于 2010-08-04 03:40:56
要删除第0行和第1行,请使用lt selector选择小于2的行,然后对它们执行remove操作:
$('#parent div:lt(2)').remove();
发布于 2012-08-11 07:48:32
这是一个古老的主题,但我很好奇,为什么没有人提到nth-child
。
$("#parent > div:nth-child(n + " + index + ")").remove();
*更新:我当时没有足够的代表知道,但有一个nth-child
答案,删除。
https://stackoverflow.com/questions/3400135
复制相似问题