页面搜索高亮 我现在想实现一个搜索功能,罗列出所搜索的相当多的数据,之后对应的关键字进行高亮显示,现在卡在关键字高亮显示的问题上面。当我搜索出很多数据如123456789时,如果给内容添加标签只可以高亮本内容,不可以只高亮例如1234"567"89一类 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 protected string get_name(object ob) { string str = ob.ToString(); if (str.Length >= 24) str = str.Substring(0,22) + "..."; if (Request["search"] != null && Request["s0"] != null) { // 需要做变色处理 str = str.Replace(Request["s0"], "<font color=red>" + Request["s0"] + "</font>"); } return str; }asp c#代码 自己写的,从数据库搜索内容后再显示绑定时处理的... <SCRIPT LANGUAGE="JavaScript">function SelectStr(){ for (var i = 0; i < TableXKJG.rows.length; i++){ for(var j = 0; j < 5; j++){ TableXKJG.rows[i].cells[j].style.backgroundColor = ""; } } for (var i = 0; i < TableXKJG.rows.length; i++){ for(var j = 0; j < 5; j++){ if (string.value == TableXKJG.rows[i].cells[j].innerText){ TableXKJG.rows[i].cells[j].style.backgroundColor = "#7a7a7c"; } } }}</SCRIPT> <input name="string" type="text" size=20> <input type="button" value="搜索" onClick="SelectStr();"><TABLE id="TableXKJG"><TR><TD>11</TD><TD>22</TD><TD>33</TD><TD>44</TD><TD>55</TD></TR><TR><TD>66</TD><TD>77</TD><TD>88</TD><TD>99</TD><TD>100</TD></TR><TR><TD>111</TD><TD>222</TD><TD>333</TD><TD>444</TD><TD>555</TD></TR><TR><TD>666</TD><TD>777</TD><TD>888</TD><TD>999</TD><TD>1000</TD></TR></TABLE> 1234"567"89 =>1234\"567\"89 需要进行字符串转义,然后使用文本高亮就可以了<font color=red>PPPP<font> 2楼大神代码经过测试 IE有效,Firefox失效 二楼的问题应该是FF不认<font>?试着将它改为<span>protected string get_name(object ob) { string str = ob.ToString(); if (str.Length >= 24) str = str.Substring(0,22) + "..."; if (Request["search"] != null && Request["s0"] != null) { // 需要做变色处理 str = str.Replace(Request["s0"], "<span style='color:red'>" + Request["s0"] + "</span>"); } return str; } 隐藏和显示层的问题,为什么会没现象呢? 请教关于this的问题~ innerHTML赋值问题 有没有办法让text控件的最后两个位置无效,留下位置实现有点类似下拉框右边的按钮 JavaScript能否实现我要的这种功能? 易管通:免费下载NET编辑器的封装控件EGTEditor.dll 用javascript 如何取得select 的文本值呢 升5个等边三角行,散200, 列表框多选数据至另一个列表框? 【急】jsp把从mysql中读取的数据用js进行分页处理 新增和编辑公用window的问题 jquery给隐藏域赋值问题
protected string get_name(object ob)
{
string str = ob.ToString();
if (str.Length >= 24)
str = str.Substring(0,22) + "..."; if (Request["search"] != null &&
Request["s0"] != null)
{
// 需要做变色处理
str = str.Replace(Request["s0"], "<font color=red>" + Request["s0"] + "</font>");
} return str;
}
asp c#代码 自己写的,从数据库搜索内容后再显示绑定时处理的...
function SelectStr(){
for (var i = 0; i < TableXKJG.rows.length; i++){
for(var j = 0; j < 5; j++){
TableXKJG.rows[i].cells[j].style.backgroundColor = "";
}
}
for (var i = 0; i < TableXKJG.rows.length; i++){
for(var j = 0; j < 5; j++){
if (string.value == TableXKJG.rows[i].cells[j].innerText){
TableXKJG.rows[i].cells[j].style.backgroundColor = "#7a7a7c";
}
}
}
}
</SCRIPT>
<input name="string" type="text" size=20>
<input type="button" value="搜索" onClick="SelectStr();">
<TABLE id="TableXKJG">
<TR>
<TD>11</TD>
<TD>22</TD>
<TD>33</TD>
<TD>44</TD>
<TD>55</TD>
</TR>
<TR>
<TD>66</TD>
<TD>77</TD>
<TD>88</TD>
<TD>99</TD>
<TD>100</TD>
</TR>
<TR>
<TD>111</TD>
<TD>222</TD>
<TD>333</TD>
<TD>444</TD>
<TD>555</TD>
</TR>
<TR>
<TD>666</TD>
<TD>777</TD>
<TD>888</TD>
<TD>999</TD>
<TD>1000</TD>
</TR>
</TABLE>
=>
1234\"567\"89
需要进行字符串转义,然后使用文本高亮就可以了
<font color=red>PPPP<font>
{
string str = ob.ToString();
if (str.Length >= 24)
str = str.Substring(0,22) + "..."; if (Request["search"] != null &&
Request["s0"] != null)
{
// 需要做变色处理
str = str.Replace(Request["s0"], "<span style='color:red'>" + Request["s0"] + "</span>");
} return str;
}