javascript - 展开没有分配类的文本跨度

标签 javascript jquery html

我想删除(使用 jQuery 或 JavaScript)文本中没有分配类名的跨度,但保留内容不变(保留空格和所有内容)并保留其他分配了类名的跨度。例如,我想要这个

<div id="myDiv">I want to <span class="">unwrap</span> but <span class="someClass">keep</span>.</div>

要更改为:

<div id="myDiv">I want to unwrap but <span class="someClass">keep</span>.</div>

我知道 jQuery unwrap 可能有帮助,但不确定如何。跨度没有 ID。

最佳答案

试试这个:

$('span[class=""]').each(function() {
    $(this).replaceWith(this.childNodes);
});

这应该为所有 span 标签提供一个空类属性,然后用它自己的内容替换它。

或者如果您真的想要使用.unwrap():

$('span[class=""]').each(function() {
    $(this.childNodes).unwrap();
});

关于javascript - 展开没有分配类的文本跨度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44762511/

相关文章:

c# - 像实时新闻提要ajax刷新一样实现facebook?

javascript - Angular.js 基础模式问题

javascript - Google Analytics 如何跟踪虚假网页浏览量?

javascript - 如何确定在 Javascript 的父级中单击了哪个子图像

javascript - 下拉菜单不显示所选选项

jquery - IE Z-index 不适用于 videojs

html - 使用 Chrome 检查响应式样式

html - 如何将图像放在文本之上?

javascript - 根据其中的值设置背景 td(对于特定类的 td)

Javascript:更改 div 元素的 ID 并保存值