*.js文件定义函数:
function searchStringAndReplace()
{
var str=getElementById("txtString").value;
var index=str.indexOf("js",0); while(index>-1)
{
str=str.replace("js","*");
index=str.indexOf("js",index+2);
}
alert(str);
document.getElementById("txtString").value=str;
}
*.html调用过程
<h2>5.string对象,字符的查询与过滤</h2>
<input type="text" id="txtString" name=""/><br />
<input type="button" value="过滤特殊的字符(js)" onclick="searchStringAndReplace();" name=""/>请教是哪里出了什么问题吗?感谢感谢!!

解决方案 »

  1.   

    把你的函数调用放到
    $(function(){  这里面   }
    这样写的意思是页面所有元素都加载完成后再执行花括号里的内容,
    保证页面加载完成后再调用函数。
    因为你调用函数时,document.getElementById("txtString")这句里面id为txtString的模块可能还没有加载完成
      

  2.   

    var str=document.getElementById("txtString").value;
      

  3.   

    你应该使用正则表达方式,reaplace掉所有你想过滤的字附,你这样写不是很麻烦吗?看样子你应该还是个入门者
      

  4.   


    str.replace(/js/ig,"*");这么写就可以了,写那么多
      

  5.   

    报错了,第一行
    var str=getElementById("txtString").value;改成var str=document.getElementById("txtString").value;