求高手!我想写一个JS代码希望放在网站中可以输出数据结果?

求一个JS输出问题。我想写一个JS代码 希望放在网站中可以输出数据结果。
比如,我网站中多处有代码:<DIV>abc</DIV> 希望放一个JS代码,就可以把网站中所有的<DIV>abc</DIV>代码变成XYZ
我是新手不要对我说怎么做,我不会写JS代码,请直接把所有的JS代码写出来给我! 我复制了拿去套用.

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script>
  function replaceStr() {
    var oldStr = document.getElementById('o').value;
    var newStr = document.getElementById('v').value;
    if (newStr.length > 0) {
      var allStr = document.getElementsByTagName('div');
      for (var i = 0; i < allStr.length; i++) {
        allStr[i].innerHTML = allStr[i].innerHTML.replace(oldStr, newStr);
      }
    }
  }
</script>
</head>

<body>

<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>

要寻找的字符<input id="o" type="text">
新的替换字符<input id="v" type="text">
<input type="button" onClick="replaceStr();" value="替换">
</body>
</html>

实际测试过,不需要任何外部js库,有不懂再追问~

追问

你这写的什么呀,根本不能用!我的问题你都没搞懂!我是要替换代码!比如我的网站中有abc 这组代码,如果在不加JS的情况下!打开网站看到的结果肯定是abc
我希望的是如果加了JS代码,abc能变成xyz 打开网站看到的是xyz

追答<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script>
window.onload = function(){
var allStr = document.getElementsByTagName('div');
for (var i = 0; i < allStr.length; i++) {
allStr[i].innerHTML = allStr[i].innerHTML.replace('abc', 'xyz');
}
}
</script>
</head>
<body>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
<div>abc</div>
</body>
</html>

效果是所有的abc在页面加载完成后都变成了xyz,是这样么?

追问

我用你的JS套用了下。为什么我的这样子写,无法输出xyz 请指教:(我要能替换代码的JS)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-18
引用一下Jquery.js
<script type="text/javascript" src=""></script>

$(function(){
$("div").each(function(i){
if($(this).text()=="abc")
{
$(this).text("XYZ");
}
});

});
第2个回答  2013-09-18
不太难,但是首先,JS要有定位功能

那么定位可以用 classname 可以用ID,如果比较多的话建议用classname但这就让I6不兼容了。其次如果你这个标签 只有一个比如说 <i>你也可以用 taggame

只要定位好了剩下的就简单了,for循环,改innerHTML就可以了。追问

我是新手不要对我说怎么做,我不会写JS代码,请直接把所有的JS代码写出来给我! 我复制了拿去套用.

追答

你的abc改成xyz是举例还是实际上就是改着3个字母?

追问

是举例子呀。JS套用了下。为什么我的这样子写,无法输出xyz 请指教!帮我修改:我要能替换代码的JS

追答

首先你没加载JQ

你别以为 JQ那个看着简单,其实代码并不简单,反而理解起来很复杂。只是看起来简洁,不要以为他简单就用JQ的方法。

其实这个东西思路很简单,但问题我刚才说过了,你必须要定位。

我再反复强调一次请你仔细看完。

如果你只是举例的话,如果不是确实想把abc换成xyz的话,那么我们肯定写不出一套东西来帮你解决这个问题。

因为js是要定位的,我反复强调定位。就是你要有一个ID=“xxx”或者classname=“xxx”我们得确实的知道你要替换的东西他在哪。才能替换。

当然我们可以把页面整个循环一遍,但那样效率很低,另外就是你不可能只替换abc为xyz我相信肯定有 bdf替换成 wuv。那样就又得写一个程序。你还是用不了。

所以你应该先把具体替换什么列个表。在把这些标签所在的位置,定一个规则。比如他的classname是相同的,或者他的标签是相同的。这样JS写起来非常简洁,效率又高

追问

我具体的就是要把网站中所有的替换为未填

追答



替换成为
未填

是么

第3个回答  2013-09-18
这个可能牵涉到浏览器的兼容问题:
如果楼主只是想让<DIV>内部的改变的话,不如索性直接赋值innerHTML,代码如下:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script>
window.onload = function(){
var allStr = document.getElementsByTagName('div');
for (var i = 0; i < allStr.length; i++) {
allStr[i].innerHTML = 'xyz';
}
}
</script>
</head>
<body>
<div></font></span></div>
<div></font></span></div>
<div></font></span></div>
<div></font></span></div>
<div></font></span></div>
<div></font></span></div>
<div></font></span></div>
<div></font></span></div>
</body>
</html>追问

这写的不对呀。这样子写,所有都变成xyz了。。我要的只是变成xyz (我要替换的是有一组代码)

追答



window.onload = function(){
var allStr = document.getElementsByTagName('div');
for (var i = 0; i ')
allStr[i].innerHTML = 'xyz';
}
}

那试试这个

第4个回答  2013-09-18
window.onload = function() {
  var divs = documnet.getElementsByTagName('div');  // get all divs
  for (i in divs) {
    if (divs[i].innerHTML == 'abc') {
      divs[i].innerHTML = 'xyz';
    }
  }
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网