如何删除匹配的标签,但留下内容与JQuery

hoj*_*oju 4 html javascript jquery replace

我有这样的HTML:

<div>
 <div class="a">
  content1
 </div>
 content 2
 <div class="a">
  <b>content 3</b>
 </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我想摆脱class ="a"的div,但留下他们的内容.我最初的尝试是:

$("div.a").replaceWith($(this).html());
Run Code Online (Sandbox Code Playgroud)

然而,是未定义的.你会怎么做?

Dan*_*rts 8

尝试

$("div.a").each(function(){
    $(this).replaceWith($(this).html());
});
Run Code Online (Sandbox Code Playgroud)


Sea*_*ean 5

用其字符串化的HTML内容替换元素将会破坏可能存在的任何事件处理程序.这不会:

$("div.a").each(function () {
    $(this).replaceWith($(this.childNodes));
});
Run Code Online (Sandbox Code Playgroud)