如何使用javascript替换特定标记内的字符

时间:2010-11-19 06:44:26

标签: javascript replace

我需要在页面加载时使用javascript替换特定标记内的字符。我有一大堆要替换的角色。所以它会很快,应该适用于主流浏览器。 例如: -

<p> The quick brown fox jumps over the lazy dog </p>

需要看起来像

<p> h=f t)ujh lk.,h ghy tfbm' bhjf ghy {>ht Frt </p>

谢谢!

2 个答案:

答案 0 :(得分:2)

<p>一个ID,然后你就可以了:

<p id='p1'>content...</p>

使用Javascript:

var text = document.getElementById('p1').innerHTML;
text = text.replace("c","x");
...
document.getElementById('p1').innerHTML = text;

修改

要定位所有<p>,请按照说法执行操作:

var allPs = document.getElementsByTagName("P");
var text;

for(i=0;i<allPs.length;i++) {
  text = allPs[i].innerHTML;
  text = text.replace("c","x");
  allPs[i].innerHTML = text;
}

您可能必须在while方法上运行.replace()循环,因为调用它只会进行一次替换(即只替换1“c”)。

答案 1 :(得分:1)

使用正则表达式并将多个替换链在一起:

window.onload = function() {
    var string = document.getElementsByTagName("p")[0].innerHTML;
    var replacedString = string.replace(/somespecialchar/gi, "replaceWith").replace(/someotherspecialchar/gi, "replaceWith").replace(/anotherchar/gi, "replaceWith");
    document.getElementsByTagName("p")[0].innerHTML = replacedString;
}