新手求助,求思路
目的:替换页面的所有“收货”为“联系”
代码:var reg = new RegExp("收货", "g");
var stringObj = document.body.innerHTML;
var newStr = stringObj.replace(reg, "联系");
document.write(newStr);
这样处理完了就没有样式了,我是在body onload里加载的,求老鸟们指点下
[解决办法]
- HTML code
<!DOCTYPE html><html> <head> <meta charset="gb2312" /> <title></title> <style type="text/css"> </style> </head> <body><div id="test"> 收货123收货333333333333收货123</div><script type="text/javascript">var t = document.getElementById('test');var reg = new RegExp("收货", "g");var stringObj = t.innerHTML;var newStr = stringObj.replace(reg, "联系");t.innerHTML = newStr;</script> </body></html>
[解决办法]
你在body中绑定onload事件去执行函数,但函数中却使用document.write(newStr);
这样,你一执行完,当前页面中就只剩下了:newStr了。你右键查看一下页面的源文件就知道了
document.body.innerHTML=newStr;//试试
或者像我楼上这位举的例子一样,将所有的内容放进一个div内。省得你body中出现不可控的意外的时候,你觉得莫名其妙