asp搜索关键字后变红加粗的问题

<scriptlanguage="JavaScript">functionhighlight(key){varkey=key.split('|');for(vari=0;... <script language="JavaScript">
function highlight(key) {
var key = key.split('|');
for (var i=0; i<key.length; i++) {
var rng = document.body.createTextRange();
while (rng.findText(key[i]))
rng.pasteHTML(rng.text.fontcolor('red'));
}
}
highlight('<%=ser1%>')
highlight('<%=ser2%>')
highlight('<%=ser3%>')
</script>

用以上这段程序来检索替换关键字,现在只有变红,想加粗+变红怎样改?
展开
 我来答
黑睿
2014-08-11 · TA获得超过5962个赞
知道大有可为答主
回答量:2125
采纳率:56%
帮助的人:947万
展开全部
你这个用正则来做比较简单吧,而且你这个document.body.createTextRange貌似也不兼容IE以外的其他浏览器

<script type="text/javascript">
function highlight(str){
var reg = new RegExp(str,"gi");
var obody = document.body;//此处也可替换为document.getElementById('某元素ID'),即可只替换指定元素区域内的内容
var shtml = obody.innerHTML.replace(reg,"<strong><font color='red'>"+str+"</font></strong>");
obody.innerHTML = shtml;
}
highlight('<%=ser1%>')
highlight('<%=ser2%>')
highlight('<%=ser3%>')
</script>
更多追问追答
追问

不行喔,用你的之后,整个网页都是输出以下的代码内容,密密麻麻,整个网页都是这些html代码:

<STRONG><FONT
color=red></FONT></STRONG>S<STRONG><FONT
color=red></FONT></STRONG>E<STRONG><FONT
color=red></FONT></STRONG>

追答

我测试没有问题,你复制过去的时候,有些符号被转义了吧。你仔细检查一下。或者把代码截图贴上来看看。我把百度知道的这个页面代码复制下来,然后用我的代码搜索替换一些单词,显示出来的效果是没有问题的。


推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式