客户端的js搜索?
如果是服务器端 你可以用 replace替换下 比如说 aaa 替换为 <span style="color:red">aaa</span>
客户端也差不多的,替换innerHTML

解决方案 »

  1.   

    txt.scrollIntoView();
     txt.pasteHTML("<font color=red><b>"+txt.text+"</b></font>");
      

  2.   

    I am net_lover,If you wanna email to net_lover,you can send a mail to him!
    <FORM name="search">
    要查找的字符:<INPUT onchange="n = 0;" size=15 name="string" value="net_lover">
    替换成:<INPUT name="rpl" value="【孟子E章】">
    <INPUT type=button value="查找" onclick="findInPage(string.value,0);">
    <INPUT type=button value="替换" onclick="findInPage(string.value,1);">
    </FORM>
    <SCRIPT language=JavaScript>
     var NS4 = (document.layers);
     var IE4 = (document.all);
     var win = window;
     var n = 0;
     function findInPage(str,bln) {
     var txt, i, found;
     if (str == "")
     return false;
     if (NS4) {
     if (!win.find(str))
     while(win.find(str, false, true))
     n++;
     else
     n++;
     if (n == 0)
     alert("Not found.");
     } if (IE4) {
     txt = win.document.body.createTextRange();
     for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
     if(bln==0)
     txt.moveStart("character", 1);
     else
     txt.moveStart("character", 0);
     txt.moveEnd("textedit");
     }
     if (found) {
     txt.moveStart("character", -1);
     txt.findText(str);
     if(bln==1)
     txt.text=document.search.rpl.value txt.scrollIntoView();
     txt.pasteHTML("<font color=red><b>"+txt.text+"</b></font>");
     txt.moveEnd("textedit");
     n++;
     }
     else {
     if (n >0) {
     n = 0;
     findInPage(str);
     }
    }
    }
    return false;
    }
    </SCRIPT>
      

  3.   

    谢谢楼上两位的解答,我可能没有说清楚,不是要替换html代码,而是仅仅在页面上将搜索到的关键字用亮色表示出来;等再输入下一个关键字查找时,以前的关键字还是要恢复原样的,新的关键字会用亮色表示。不知道用outhtml可行不可行~~~~但是不太会,楼上两位能不能再帮帮小妹的忙。
    TO net_lover(孟子E章),感谢你提供的搜索代码,帮了我很大忙,我的这个问题能否再帮我解决一下呢?不是要替换,而是在页面上突出显示。