如何在aspx页面中实现高亮显示搜过关键字呢?以下有两种方法可以考虑:
方法一:
可以在aspx页面中数据绑定时直接用replace函数实现,比如:如果绑定了一个 id字段:
想高亮显示搜索关键字可以这样写:
<%#Eval(“id”)%>.toString().replace(strSearch,"<font color=red>"+strSearch+"</font>");
其中 strSearch 为搜索关键字,这样搜索出来的关键字 就为红色显示了 。
方法二:
但是这样直接在aspx页面写有一个缺点就是如果数据库中没有匹配的项时就会提示出错。
所以最好采用下面的方法:
aspx页面中写上getStr(<%#Eval(“id”)%>.toString())
cs 页面中定义一个 getStr(string)函数
比如:
protected string GetString(string strKey)
{
if (tbSearch.Text.ToString().Trim() == "")
{
return strKey;
}
string strReturn = strKey.Replace(tbSearch.Text.ToString().Trim(), "<font color=red>" + tbSearch.Text.ToString() + "</font>");
return strReturn;
}
这样也能够实现第一种方法的效果,并且即使数据库没有匹配的数据也不会出错;