Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Removing children elements given an index?

Tags:

jquery

I've got a layout like this:

<div id='parent'>

    <div id='row_0'></div>

    <div id='row_1'></div>

    <div id='row_2'></div>

    ... 

    <div id='row_N'></div>
</div>

At some point, I want to remove all div "rows" above a certain index, like:

for (var index = 1; index < $('#parent').children.length; index++) {
    $('#parent').remove('#row_' + index);
}

is there a simpler way to do this in jquery? Something like 'just remove all children starting from index N'?

(the above for loop won't really work, but is the kind of thing I would do if there's no other way)

like image 535
user246114 Avatar asked Aug 03 '10 19:08

user246114


1 Answers

"Just remove (detach) all children of #parent, starting at element N":

$("#parent").children().slice(N).detach();

If the elements are not going to be reinserted, use remove() instead of detach() in order to discard data and events associated with the removed elements.

like image 150
You Avatar answered Oct 05 '22 00:10

You