首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery如果div包含此文本,请替换文本的该部分

jQuery如果div包含此文本,请替换文本的该部分
EN

Stack Overflow用户
提问于 2012-07-04 15:43:15
回答 5查看 258.7K关注 0票数 88

正如标题所说,我想替换div中文本的特定部分。

结构看起来像这样:

代码语言:javascript
复制
<div class="text_div">
    This div contains some text.
</div>

例如,我只想将“包含”替换为"hello everyone“。我找不到解决方案。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-07-04 15:45:49

您可以使用text方法并传递一个返回修改后的文本的函数,并使用本机String.prototype.replace方法执行替换:

代码语言:javascript
复制
​$(".text_div").text(function () {
    return $(this).text().replace("contains", "hello everyone"); 
});​​​​​

这是一个working example

票数 155
EN

Stack Overflow用户

发布于 2012-07-04 15:46:11

如果可能,您可以将要替换的单词放入span标记中,如下所示:

代码语言:javascript
复制
<div class="text_div">
    This div <span>contains</span> some text.
</div>

然后,您可以使用jQuery轻松地更改其内容:

代码语言:javascript
复制
$('.text_div > span').text('hello everyone');

如果您不能将其包装在span标记中,您可以使用正则表达式。

票数 12
EN

Stack Overflow用户

发布于 2018-04-18 00:28:11

非常简单,只需使用此代码,它将保留HTML,同时只删除未包装的文本:

代码语言:javascript
复制
jQuery(function($){

    // Replace 'td' with your html tag
    $("td").html(function() { 

    // Replace 'ok' with string you want to change, you can delete 'hello everyone' to remove the text
          return $(this).html().replace("ok", "hello everyone");  

    });
});

下面是完整的示例:https://blog.hfarazm.com/remove-unwrapped-text-jquery/

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11324559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档