【问题标题】:jQuery replace specific textjQuery替换特定文本
【发布时间】:2012-02-07 13:42:48
【问题描述】:

简单地说,如何使用 jQuery 将准确的文本替换为 HTML?

原文是View All Customer Reviews

我希望将其替换为<span class="redbutton">View All Reviews »</span>

谢谢。

【问题讨论】:

  • 此文本是否在某个 html 元素中?
  • 是的,一个主播,但是这个主播没有被分类也没有被识别
  • 你不应该为此需要 jQuery。 Javascript 具有内置的正则表达式匹配/替换功能。
  • @Brombomb 你有解决办法吗?
  • 下面@Wally-Qiao 的解决方案完全可以接受

标签: javascript jquery text replace


【解决方案1】:
<div id="_div">xxx|||View All Customer Reviews|||xxx</div>
<script>
$(function() {
var html = $('#_div').html() + '';
html = html.replace(/View All Customer Reviews/g, '<span class="redbutton">View All Reviews &#187;</span>');
$('#_div').html(html);
});
</script>

// ====================----================== ///

<a>xxx|||View All Customer Reviews|||xxx</a>
<a>yyy|||View All Customer Reviews|||yyy</a>
<a>zzz|||View All Customer Reviews|||zzz</a>
<script>
$(function() {
    $('a').each(function(i) {
        var html = $(this).html() + '';
        html = html.replace(/View All Customer Reviews/g, '<span class="redbutton">View All Reviews &#187;</span>');
        $(this).html(html);
    });
});
</script>

【讨论】:

  • 我的内容没有包含在 div 中
  • 如果您提供了您的内容所包含的内容,我们将能够为您提供更具体的帮助。这个解决方案展示了如何使用 jQuery 通过id 抓取任何 html 元素的内容,然后替换文本。
  • @Brombomb 我知道我知道内容被包裹在一个未分类的锚中
  • 使用$('a') 抓取所有锚点。您应该可以使用一些父 div/类选择器来缩小范围。
  • else if using \r\n and tabs, html.replace(/View(\s*[\r\n|\t]\s*)All Customer Reviews/g, ... ) @user1090389
【解决方案2】:
猜你喜欢
  • 1970-01-01
  • 2011-09-11
  • 1970-01-01
  • 2011-08-08
  • 1970-01-01
  • 2021-03-26
  • 2019-01-23
  • 1970-01-01
相关资源
最近更新 更多