0

我正在使用这种方法来查找和替换一段文本,但不确定它为什么不起作用?当我使用 console.log 时,我可以看到我想要替换的正确内容,但最终结果不起作用:

(function($) {
  $(document).ready( function() {
        var theContent = $(".transaction-results p").last();
        console.log(theContent.html());
        theContent.html().replace(/Total:/, 'Total without shipping:');
    });
})(jQuery);

有什么想法吗?

谢谢!

4

3 回答 3

3

字符串已被替换,但您没有将字符串重新分配给元素的 html。使用return

theContent.html(function(i,h){
    return h.replace(/Total:/, 'Total without shipping:');
});

JS Fiddle 演示(由diEcho 提供)。

参考:

于 2012-11-01T12:15:16.197 回答
0
(function($) {
  $(document).ready( function() {
        var theContent = $(".transaction-results p").last();
        console.log(theContent.html());
        theContent.html(theContent.html().replace('Total:', 'Total without shipping:'));
    });
})(jQuery);

为什么你这样做/Total:/而不'Total'喜欢普通的字符串?

-@David Thomas 的解决方案有效。

于 2012-11-01T12:15:31.167 回答
0

您有额外:的字符串要搜索,并将其分配回 theContent 的 html

现场演示

  $(document).ready( function() {
        var theContent = $(".transaction-results p").last();
        console.log(theContent.html());
        theContent.html(theContent.html().replace(/Total/, 'Total without shipping:'));
  });
于 2012-11-01T12:16:51.150 回答