Javascript 如何删除html标记(span)仅使用特定类名包装,而不从字符串中删除内部内容?
我想从字符串中删除一些不需要的标记,以便将干净的字符串存储到数据库中 我试图将字符串与正则表达式联系起来。 这就是我尝试过的--Javascript 如何删除html标记(span)仅使用特定类名包装,而不从字符串中删除内部内容?,javascript,jquery,string,Javascript,Jquery,String,我想从字符串中删除一些不需要的标记,以便将干净的字符串存储到数据库中 我试图将字符串与正则表达式联系起来。 这就是我尝试过的-- var data='Donec rutrum congue leo eget malesuada。Mauris blandit aliquet elit,eget malesuada.' 我想删除所有的span标记,它的类名以“不需要的span-”开头,它应该只删除标记包装,而不删除内容内的标记包装 因此,所需的输出应如下所示 var data = '<p&g
var data='Donec rutrum congue leo eget malesuada。Mauris blandit aliquet elit,eget malesuada.'
我想删除所有的span标记,它的类名以“不需要的span-”开头,它应该只删除标记包装,而不删除内容内的标记包装
因此,所需的输出应如下所示
var data = '<p>Donec rutrum congue leo eget malesuada. <span>Mauris</span> blandit aliquet elit, eget malesuada.</p>'
var data='Donec rutrum congue leo eget malesuada。Mauris blandit aliquet elit,eget malesuada.'
请注意--我们只需要删除带有“不需要的span-”类名称开头的span标记,其他span应保持原样。您可以像这样使用start with运算符:
var allData = $('.all').find("span[class^='unwanted-span']").css('color','blue');
我编辑你的代码笔容器
要删除,请使用以下命令:
var allData = $('.all').find("span[class^='unwanted-span']").remove();
要展开跨距文本,请使用以下命令:
var allData = $('.all').find('span[class^="unwanted-span-"]').contents().unwrap();
console.log($('.all').html());
你可以简单地使用
var allData = $('*[class^="unwanted-span-"]').contents().unwrap();
console.log($(".all").html())
如果不想更改HTML,可以尝试以下方法:
var match = $('*[class^="unwanted-span-"]').get(0);
var test = $('p').html().replace(match.outerHTML,match.innerHTML);
console.log( test );
当然,如果您有多个匹配项,则必须迭代所有匹配项:)感谢您的研究,但我需要删除这些跨度。请查看描述中所需的输出。很简单,将css('color','blue')更改为remove()。var allData=$('.all').find(“span[class^='Understand-span']).remove();是的,我也试过那个。但是remove()将删除整个标记及其内容。我只想删除span的内部内容,而不是内部内容。span的内容不应被删除。好的,您可以使用simpe this
var allData=$('p').text()console.log(''+allData+'')代码>检查代码笔。var allData=$('.all').find('span[class^=“不需要的span-”]).contents().unwrap();log($('.all').html())正如我在标题中提到的,它是一个字符串而不是DOM。因此,这可能只适用于DOM。var data='Donec rutrum congue leo eget malesuada。Mauris blandit aliquet elit,eget malesuada.'
我想把上面的字符串转换成这个--var data='Donec rutrum congue leo eget malesuada。Mauris blandit aliquet elit,eget malesuada。“
删除span wrap,它有“不需要的span-”类名,但内部内容保持不变。在这个问题中,我没有提到DOM。请看标题,我已经清楚地提到字符串。我需要使用jQuery来处理这个问题,所以我不得不提到它。
var match = $('*[class^="unwanted-span-"]').get(0);
var test = $('p').html().replace(match.outerHTML,match.innerHTML);
console.log( test );