jQuery从元素中删除特定文本

hen*_*ron 23 jquery

我想从我网站上的一个元素中删除"By:"文本.我希望文本的其余部分保留在那里.我怎样才能用jQuery实现这一目标?谢谢.

HTML

<div id="text">By: Anonymous From Minnesota</div>
Run Code Online (Sandbox Code Playgroud)

我希望它只是:

<div id="text">Anonymous From Minnesota</div>
Run Code Online (Sandbox Code Playgroud)

And*_*dri 36

如果你想在其中找到包含"By:"的每个元素并将其删除,你可以试试这个:

$(':contains("By:")').each(function(){
    $(this).html($(this).html().split("By:").join(""));
});
Run Code Online (Sandbox Code Playgroud)

这将删除任何元素中出现的"By:".如果您想要定位特定类型的元素,只需更改$(':contains("By:")')为包含适合您的选择器.


Zol*_*oth 12

使用正则表达式的更全局的解决方案 By:即使您的字符串结构发生变化,这也将取代.

var str = $('div').text().replace(/By:/g, '');
$('div').text(str);
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="text">By: Anonymous From Minnesota</div>
Run Code Online (Sandbox Code Playgroud)