删除某些span标记,将文本保留在-Javascript/jquery中
我有以下html:删除某些span标记,将文本保留在-Javascript/jquery中,javascript,jquery,html,regex,Javascript,Jquery,Html,Regex,我有以下html: <h1>These are <span style="color: red;">RED</span> words</h1> <h2>These are <span class="green">GREEN</span> words</h2> <h3>These are more <span style="color: red;">RED</span>
<h1>These are <span style="color: red;">RED</span> words</h1>
<h2>These are <span class="green">GREEN</span> words</h2>
<h3>These are more <span style="color: red;">RED</span> words</h3>
这些是红色的单词
这些都是生词
这些是更多的红色词汇
我想:
<h1>These are RED words</h1>
<h2>These are <span class="green">GREEN</span> words</h2>
<h3>These are more RED words</h3>
这些是红色的单词
这些都是生词
这些是更多的红色词汇
换句话说,我想使用javascript或jquery只删除
,而保留所有其他内容。span标记没有id,只有区分它们的样式
谢谢你的帮助 您可以使用unwrap()
。您可以找到文档。还要记得检查span
是否具有样式的属性
$('h1,h2,h3')。查找('span')。每个(函数(){
if($(this.attr('style')){
$(this.contents().unwrap();
}
})
这些是红字
这些都是生词
这些是更多的红色单词
这也适用:
$('h1').text($('h1').text())
$('h3').text($('h3').text())
当然,您仍然需要逻辑来测试span上是否存在样式,只是显示有另一种方法可以删除span并保留文本。您只想删除span
带有style=“color:red”
的标记,还是要删除带有任何内联样式的span标记?或者您想删除没有类的内联样式的span标记?这是一件好事,但是您如何选择文本内容以匹配父级?很好!可能为.css('color')@Jtbs添加了一个if语句,是的,只是添加了它。谢谢