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