JQuery удалить теги по обе стороны от div - PullRequest
0 голосов
/ 09 февраля 2012

Как я могу удалить теги p за пределами этого div (я не хочу удалить тестовый div).

<p>
  <div class='test'>
    content here
    <img />
  </div>
</p>

Результат, который я хотел бы получить ...

<div class='test'>
  content here
  <img />
</div>

Я знаю, что здесь есть похожий вопрос: jQuery: Как удалить окружающие теги div? , но не заставил его работать в моей ситуации

Я пробовал

$('p .test').replaceWith($('.test));

Но, конечно, это просто выбирает div салона-слайд-шоу, а не p перед ним.

Ответы [ 4 ]

5 голосов
/ 09 февраля 2012

Метод, который вы ищете, называется .unwrap(), ознакомьтесь с документацией: http://api.jquery.com/unwrap/

0 голосов
/ 09 февраля 2012

Это будет сделано, но помните, что это повлияет на все div с class="test"

$("div.test").unwrap();
0 голосов
/ 09 февраля 2012

Попробуйте это:

$('.test').each(function() {
    $(this).insertAfter($(this).parent());
    $(this).prev().remove();
});
0 голосов
/ 09 февраля 2012

Попробуйте следующее:

$('.salon-slideshow').each(function() {
  $(this).parent().replaceWith($(this));
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...