jQuery:从DOM元素的所有实例中删除html标记

时间:2014-11-26 11:42:34

标签: javascript jquery html

我的HTML页面中有多个.text-excerpt实例,我想知道如何从每个元素实例中删除所有标记。

HTML:

<span class="text-excerpt">
    <p>Lorem ipsum dolor sit <strong>amet</strong>, consectetur adipiscing <br>elit. Aenean eget.</p>
</span>
<span class="text-excerpt">
    <p>Lorem ipsum dolor sit <strong>amet</strong>, consectetur adipiscing <br>elit. Aenean eget.</p>
</span>
<span class="text-excerpt">
    <p>Lorem ipsum dolor sit <strong>amet</strong>, consectetur adipiscing <br>elit. Aenean eget.</p>
</span>

1 个答案:

答案 0 :(得分:3)

您可以使用.text().text()的getter版本将获取元素的.innerHTML属性并过滤掉任何HTML标记。

将函数传递给.text()的setter版本并返回获得的值。

$('.text-excerpt').text(function(_,v){
    return v;
});

JSFiddle


可以制作一个整洁的小插件:

$.fn.removeHTML = function(){
    return this.each(function(){
        $(this).text(function(_, v){ return v ; });
    });
};

JSFiddle