以下函数仅替换它找到的第一个“<br />
”,而不是以下函数。有谁知道如何解决这个问题?
我希望该函数替换整个文档中的所有字符串。
<script language="javascript" type="text/javascript">
window.onload = function umtauschen()
{
document.body.innerHTML = document.body.innerHTML.replace('<br />', '<br />');
document.body.innerHTML = document.body.innerHTML.replace('<b>', '<b>');
document.body.innerHTML = document.body.innerHTML.replace('</b>', '</b>');
}
</script>
由于
答案 0 :(得分:5)
使用正则表达式和g
(全局)标志:
document.body.innerHTML = document.body.innerHTML
.replace(/<br \/>/g, '<br />')
.replace(/<b>/g, '<b>')
.replace(/<\/b>/g, '</b>');
另一种选择是使用.split(find).join(replace)
成语:
document.body.innerHTML = document.body.innerHTML
.split('<br />').join('<br />')
.split('<b>').join('<b>')
.split('</b>').join('</b>');
答案 1 :(得分:1)
以下代码可以解决您的问题:
document.body.innerHTML = document.body.innerHTML.replace(/</g, '<').
replace(/>/g, '>') ;
答案 2 :(得分:1)
如果文档是动态的,如脚本,PHP或其他方式生成的文档,最好更换DB中的标签或打印数据。如果它是一个静态HTML页面,最好在原始文件中编辑代码。
页面加载后动态替换整个主体的速度会很慢。