2012-04-05 18 views
7

La mia situazione è come questoRimuovere tag p utilizzando jQuery senza eliminare il contenuto

<p><img src="/media/118711/banner.jpg" width="344" height="113" alt="Banner"></p> 

voglio eliminare il tag p utilizzando jQuery ma non ho bisogno di cancellare il contenuto (immagine). Qualcuno per favore mi può aiutare?

+1

non hai mai gironzolato quali sono gli elementi cliccabili accanto a risposte e domande? Non posso crederci. –

+0

@Topener: penso che ti stia sbagliando ho solo fatto sei domande e ne ho contrassegnato 3 come giusto – Athul

+1

Scusa, le ho confuse con le tue risposte. Nessuno di essi è contrassegnato come corretto. Dovrai fare clic sull'icona di controllo, non sulla freccia: http://stackoverflow.com/users/1177753/athul-ks?tab=questions –

risposta

13

Questo dovrebbe farlo ...

$('p > *').unwrap(); 

jsFiddle.

+2

+1 per la risposta concisa e per indicarmi il nuovo materiale didattico (unwrap ???). Grazie – Gabber

+0

Qualcuno può spiegare perché questo avrebbe funzionato? –

+0

@tymie seleziona tutti i bambini diretti e * li scarta * dal loro elemento contenitore, che è il 'p'. – alex

4

Il selettore $('p > *') funziona solo quando il contenuto di p è un altro tag. Se contiene solo testo, questo selettore non lo colpisce. Questo funziona per me:

$("p").each(function() { 
    $(this).replaceWith($(this).html()); 
}); 
Problemi correlati