Ich benutze .append, um zu einem div hinzuzufügen
$(this).append('<ul><li>test</li></ul>');
Wie kann ich nach einem suchen <ul>und es entfernen, wenn es in den Kindern von existiert $(this)?
Antworten:
Sie könnten verwenden remove(). Weitere Informationen zu jQuery remove () .
$(this).children("ul").remove();
Beachten Sie, dass dadurch alle untergeordneten ulElemente entfernt werden.
Das Gegenteil von .append()ist .prepend().
Aus der jQuery-Dokumentation zum Voranstellen…
Die Methode .prepend () fügt den angegebenen Inhalt als erstes untergeordnetes Element jedes Elements in die jQuery-Auflistung ein (Um es als letztes untergeordnetes Element einzufügen, verwenden Sie .append ()).
Mir ist klar, dass dies den speziellen Fall des OP nicht beantwortet . Aber es beantwortet die Überschrift der Frage. :) Und es ist der erste Treffer bei Google für "jquery across append".
Verwenden Sie die Methode remove () :
$(this).children("ul").remove();
Was Sie auch berücksichtigen sollten, ist, einen Verweis auf das erstellte Element beizubehalten, und Sie können es dann einfach spezifisch entfernen:
var newUL = $('<ul><li>test</li></ul>');
$(this).append(newUL);
// Later ...
newUL.remove();
Ich hatte gerade das gleiche Problem und bin darauf gestoßen - was für mich eigentlich der Trick ist:
// $("#the_div").contents().remove();
// or short:
$("#the_div").empty();
$("#the_div").append("HTML goes in here...");
.contents().remove()gleich .empty().
$(...).empty().append(...):) kombinieren