如何按类名删除没有内容的html元素

How remove an html elements without the content inside by class name?

本文关键字:html 元素 何按类 删除      更新时间:2023-09-26

如何通过jQuery或Javascript获得此输出:

HTML:

This is a <span class="getClass" >test</span> for javascript and jquery Then suppose <span class="getClass" >it</span>. how can i change it in multiple line <span class="getClass" >look</span> like this

输出:

This is a test for javascript and jquery

我尝试了一些代码,但它不起作用,比如:

<Script>
        $('.getClass').unwrap();
</script>

但是它删除父元素而不是元素本身。

我只拥有对该元素的类选择器访问权限,并希望删除整个元素。我无法阅读元素内部的文本。

谢谢。

试试这个,

实时演示

$('.getClass').replaceWith($('.getClass').text());

如果您不想更改DOM,而只需要获取不带span标记的文本,那么您可以使用

$('.getClass').text();

您应该能够将其设置为文本内容(请参阅text()

$(containerSelector).text(function (_, text) {
    return text;
});

基本上,您只需要文本。使用.text获取将返回所有标签自动剥离的文本。通过使用.text设置文本,您可以有效地删除它们:http://jsfiddle.net/s4DJP/.

$("...").text(function(i, text) {
  return text;
});

更通用,使用正则表达式:

$().ready(function(){
var htmlstr = 'This is a <span class="getClass" >test</span> for javascript and jquery';
var regex = /(<([^>]+)>)/ig;
    var plainstr = htmlstr.replace(new RegExp(regex ), "");
    alert(plainstr );
});​

http://jsfiddle.net/Qjvxf/4/