使用.replace用javascript替换HTML字符串

时间:2014-01-21 22:42:47

标签: javascript html

我有这个HTML代码:

<p>Hello, this is a test replacing, <span class="myclass">over test</span> and <span class="myclass">over test</span>.</p>

我的javascript可以将“Hello”替换为“FuuBar”。

document.body.innerHTML = document.body.innerHTML.replace(/Hello/g, "FuuBar");

但我无法将<span class="myclass">over test</span>替换为<span class="thanks"><b>Thanks God</b></span>

我开始使用javascript。我需要在纯js中解决这个问题。可以帮助我的代码吗?抱歉英语。

JsFiddle寻求帮助。

2 个答案:

答案 0 :(得分:2)

使用DOM进行此操作。点击此处查看更多信息:https://developer.mozilla.org/en-US/docs/DOM

var spans = document.querySelectorAll('.myclass');
for (var i=0; i<spans.length; i++) {
  spans[i].classList.remove('myclass');
  spans[i].classList.add('thanks');
  spans[i].innerHTML = '<b>Thanks god</b>';
}

答案 1 :(得分:0)

你检查了报价吗?您应该在JS中的类名中转义它们或使用单引号。如果不是这样,请提供代码。

除此之外,替换整个身体似乎不是这样的任务的最佳选择。