Naprzeciwko dołączania w jquery

81

Używam .appenddo dodawania do div

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

jak mogę wyszukać <ul>i usunąć to, jeśli istnieje w dzieciach $(this)?

sami
źródło

Odpowiedzi:

88

Możesz użyć remove(). Więcej informacji na temat jQuery remove () .

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

Zauważ, że spowoduje to usunięcie wszystkich ul elementów, które są dziećmi.

Josh K.
źródło
Chcę pobrać element (div) do zmiennej. jak mogę to zrobić?
Prasanth Jaya,
23

Przeciwieństwem .append()jest .prepend().

Z dokumentacji jQuery do przedrostka…

Metoda .prepend () wstawia określoną treść jako pierwsze dziecko każdego elementu w kolekcji jQuery (aby wstawić ją jako ostatnie dziecko, użyj .append ()).

Zdaję sobie sprawę, że to nie odpowiada konkretnemu przypadkowi OP . Ale odpowiada na pytanie. :) I to pierwsze trafienie w Google dotyczące „jquery naprzeciwko dołączania”.

elbowlobstercowstand
źródło
1
Odpowiada na moje pytanie. „Co jest przeciwieństwem dołączania”
Chris Marisic
18

Użyj metody remove () :

$(this).children("ul").remove();
Frédéric Hamidi
źródło
14

Powinieneś również wziąć pod uwagę zachowanie odniesienia do utworzonego elementu, wtedy możesz go łatwo usunąć w konkretny sposób:

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

   // Later ...

   newUL.remove();
RoToRa
źródło
Czy możesz wyjaśnić trochę więcej?
Shamseer Ahammed
@ShamseerAhammed Co nie rozumiesz?
RoToRa
9

po prostu miałem ten sam problem i natknąłem się na to - co właściwie działa dla mnie:

// $("#the_div").contents().remove();
// or short: 
$("#the_div").empty();
$("#the_div").append("HTML goes in here...");
Martin Wirth
źródło
1
Wierzę, że .contents().remove()równa się .empty().
pimvdb
2
Nie jestem do końca pewien, czy wiesz o łańcuchach - na wszelki wypadek możesz łączyć instrukcje w jQuery jak $(...).empty().append(...):)
pimvdb
5

Naprzeciwko do góry jest children (), ale przeciwna pozycja to prepend (). Tutaj bardzo dobry tutorial.

ciepło
źródło