javascript - 如何删除特定标签并保留其内容

标签 javascript jquery

我在 contenteditable div 中有一些不需要的标签,需要将其删除。

它们是 span

尝试使用jquery unwrap 函数,但结果是未定义,因为它删除了父级的标签而不是标签本身。

有什么帮助吗?在下面的示例中,预期的控制台是:

lorem ipsum lorem ipsum lorem ipsum

$('button').on('click', function(){
  $('span').unwrap();
  console.log($('#story').html());
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class='story' id='story'>
loem ipsum &nbsp;<span style="font-size: 1.3em;">lorem ipsum</span> lorem ipsum
</div>
<br>
<button>CLICK</button>

最佳答案

你必须使用like

$("#story").find("span").contents().unwrap();

$('button').on('click', function(){
  $("#story").find("span").contents().unwrap();
  console.log($('#story').html().replace(/&nbsp;/g, ''));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class='story' id='story'>
loem ipsum &nbsp;<span style="font-size: 1.3em;">lorem ipsum</span> lorem ipsum
</div>
<br>
<button>CLICK</button>

关于javascript - 如何删除特定标签并保留其内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55508887/

相关文章:

c# - 脚本没有连接到 JsonResult Controller

javascript - 有人可以引导我完成这条线吗

jquery - 使所有HTML组件消失,只显示背景图片

javascript - jQuery 和 HTML 切换按钮

javascript - 在 jQuery 中,如何选择未单击 anchor 的所有其他父级 li?

javascript - 如何找到最长公共(public)子数组

javascript - 如何在Javascript中动态编写(react项目)

javascript - 在单击第二个按钮之前,AngularJS 数据不会刷新

javascript - Blackberry webworks 和 Phonegap 不执行 &lt;script&gt; 标签

javascript - FileReader 的 Promise 函数过早解析