2015-09-17 3 views
0

Пример:Как удалить элемент, сохраняющий его содержимое с помощью jQuery?

<div id="block"> 
    <div id="wrapper"> 
     Some content 
     <p>Lorem ipsum...</p> 
     Little more 
    </div> 
</div> 

Цель состоит в том, чтобы удалить #wrapper сохранение его содержание. Все данные jQuery и события #wrapper должны быть сохранены. Содержание #wrapper неизвестно, поэтому ни $('#wrapper p').unwrap(), ни $('#block')[ 0 ].innerHTML += $('#wrapper').html; $('#wrapper').remove; неприемлемы.

Результат должен быть:

<div id="block"> 
    Some content 
    <p>Lorem ipsum...</p> 
    Little more 
</div> 
+0

Ответы на "дублирует" вопрос не решить этот вопрос. – Finesse

ответ

0
var $wrapper = $('#wrapper'); 
    $contents = $wrapper.contents(); 

if ($contents.length) 
    $contents.first().unwrap(); 
else 
    $wrapper.remove(); 
+0

Как правило, ответы гораздо полезнее, если они содержат объяснение того, что должен делать код, и почему это решает проблему, не представляя других. (Это сообщение было помечено как минимум одним пользователем, предположительно потому, что они считали, что ответ без объяснений должен быть удален.) –

Смежные вопросы