尝试在不影响URL的情况下替换一段文本

时间:2016-09-20 17:33:52

标签: javascript jquery html string replace

有人可以告诉我如何在此替换中保留网址吗?当我运行此代码时,它会查找并替换文本,但会删除链接text,并且只有文字。我需要保留链接,这只是一个简单的例子。实际的代码我需要使用动态链接,所以我可以手动替换它。

$(".text_div").text(function () {
  return $(this).text().replace("contains", "hello everyone");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="text_div">
  This div contains some <a href="http://www.google.com">text</a>.
</div>

这是给我的

  

这个div你好大家发短信。

2 个答案:

答案 0 :(得分:2)

使用.html()代替.text()

$(".text_div").html(function() {
  return $(this).html().replace("contains", "hello everyone");
})

$(".text_div").html(function() {
  return $(this).html().replace("contains", "hello everyone");
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="text_div">
  This div contains some <a href="http://www.google.com">text</a>.
</div>

答案 1 :(得分:0)

而不是使用$(this).text(),你应该做$(this).html()。