繁体   English   中英

js-使用replace方法替换html元素

[英]js - using replace method to replace html element

我有个问题。 我今天早上有工作,但我不知道该怎么做。 我在这里的工作(html):

<div class="demo">
    <p>this is demo text</p>
</div>

这是我的JS:

var tempdata = $(".demo").text();
var replacedata = tempdata.replace("text","<span>1234</span>");

看起来一切正常。 但是结果是: this is demo <span>1234</span> 这不是我想要的结果。 如何通过使用replace方法使此字符串成为HTMLelement?

document.getElementById('demo').firstElementChild.innerHTML =
  document.getElementById('demo').firstElementChild.innerHTML.replace(/text/, "<span>1234</span>");

将值.html()回时,请使用.html()而不是.text()这样它就不会对其进行编码,如下所示:

var tempdata = $(".demo").text();
var replacedata = tempdata.replace("text","<span>1234</span>");
$(".demo").html(replacedata);​​​​​​

你可以在这里看到一个演示

另外,如果您要对许多元素执行以下操作,则可以将方法传递给.html()

$(".demo").html(function(i, h) {
    return h.replace("text","<span>1234</span>");
});​

请注意,这也使用.html()作为源,但对示例代码没有影响。

你可以在这里看到一个演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM