2011-02-08 11 views
67

Io uso .append da aggiungere a un divfronte di accodamento in jQuery

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

come posso cercare fo un <ul> e rimuoverlo se esiste nei figli di $(this)?

risposta

73

Si potrebbe utilizzare remove(). Maggiori informazioni su jQuery remove().

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

Si noti che questo rimuoverà tutti ul elementi che sono i bambini.

+0

Voglio recuperare un elemento (div) in una variabile. come posso fare questo? –

16

utilizzare il metodo remove():

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

Cosa si dovrebbe anche prendere in considerazione, è mantenere un riferimento all'elemento creato, allora si può facilmente rimuovere nello specifico:

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

    // Later ... 

    newUL.remove(); 
8

appena avuto lo stesso problema e Ive venire attraverso questo - che fa in realtà il trucco per me:

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

Credo che '.contents(). Remove()' equals '.empty()'. – pimvdb

+0

Bello! '.empty()' funziona ugualmente bene! l'ho appena provato Grazie! –

+1

Non sono del tutto sicuro se sai di concatenare - nel caso tu non lo fossi, puoi combinare le istruzioni in jQuery come '$ (...). Empty(). Append (...)' :) – pimvdb

5

L'opposto è figlio(), ma il contrario di posizione è anteposta(). Here un ottimo tutorial.

8

L'opposto di .append() è .prepend().

Dal metodo jQuery documentation for prepend…

Il .prepend() inserisce il contenuto specificato come primo figlio di ciascun elemento dell'insieme jQuery (per inserirlo come ultimo figlio, utilizzare .Append()).

Mi rendo conto che non risponde specifica caso del PO. Ma risponde all'intestazione della domanda . :) Ed è il primo successo su Google per "jquery opposto append".

+0

Risponde alla mia domanda "Qual è il contrario di append" –