2012-04-05 123 views
7

我的情況刪除使用jQuery p標籤是像這樣而不刪除內容

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

我想使用jQuery刪除p標籤,但我並不需要刪除的內容(圖像)。任何人都可以幫助我?

+1

你從來沒有徘徊除了答案和問題旁邊的可點擊元素是什麼?我不相信。 – 2012-04-05 12:22:43

+0

@Topener:我認爲你錯了,我只問了6個問題,並將其中3個標記爲 – Athul 2012-04-05 12:33:19

+1

對不起,將它們與你的答案混淆。他們都沒有被標記爲正確的。你必須點擊支票圖標,而不是箭頭:http://stackoverflow.com/users/1177753/athul-ks?tab=questions – 2012-04-05 12:36:24

回答

13

這應該這樣做...

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

jsFiddle

+2

+ +1爲簡明的答案,並指向我新的學習材料(unwrap ???)。謝謝 – Gabber 2012-04-05 15:30:06

+0

任何人都可以解釋爲什麼這會工作? – 2013-08-29 14:50:16

+0

@tymie它選擇所有的直接孩子,並*從他們的容器元素,這是'p'解開他們。 – alex 2013-08-30 13:18:10

4

選擇器$('p > *')僅在p的內容是另一個標籤時纔有效。如果它只包含文本,那麼這個選擇器不會打到它。這適用於我:

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