[javascript] Opposite of append in jquery

I use .append to add to a div

$(this).append('<ul><li>test</li></ul>');

how can I search for a <ul> and remove it if it exists in the children of $(this)?

This question is related to javascript jquery

The answer is


Use the remove() method:

$(this).children("ul").remove();

Opposite up is children(), but opposite in position is prepend(). Here a very good tutorial.


What you also should consider, is keeping a reference to the created element, then you can easily remove it specificly:

   var newUL = $('<ul><li>test</li></ul>');
   $(this).append(newUL);

   // Later ...

   newUL.remove();

The opposite of .append() is .prepend().

From the jQuery documentation for prepend…

The .prepend() method inserts the specified content as the first child of each element in the jQuery collection (To insert it as the last child, use .append()).

I realize this doesn’t answer the OP’s specific case. But it does answer the question heading. :) And it’s the first hit on Google for “jquery opposite append”.


just had the same problem and ive come across this - which actually does the trick for me:

// $("#the_div").contents().remove();
// or short: 
$("#the_div").empty();
$("#the_div").append("HTML goes in here...");