我有一个GridView,当我在文本之间导航时,我想要突出显示特定单词的很多文本,我想突出显示它总是我的意思不是在搜索之后或其他东西,让我们假设我有以下内容gridview里面的文字“我早上会有一个苹果,晚上会有一个苹果”我想通过文本突出显示gridview中的“apple”这个词,我尝试了一个java脚本,但什么也没发生!感谢。
答案 0 :(得分:3)
你需要在你需要的单词周围包装基本的html标签。
所以改变你的字符串
"I would have an apple in the morning.."
到
"I would have an <span style='background-color:Yellow;'>apple </span>in the morning..".
一切都将开始起作用。
现在你可以在任何地方进行。
通过javascript / jquery,你可以这样做: 一个。 Gridview被渲染为纯html中的表,因此无论您提供给gridview的Id是什么,都将是表的Id。使用jquery(或javascript)抓取它并处理innerHtml。
即
$(document).ready(function(){
var text= $('#GridView_Equivalent_Id').html();
//var text= $(#+'<%= GridView1.ClientID %>').html();
text= text.replace('apple','<span style="background-color:Yellow" >apple</span>');
$('#GridView_Equivalent_Id').html(text);
});
在服务器端,你可以这样做。
假设你有一个数据表,你绑定你的GridView和这个数据表的第二列有一个字符串(句子),其中一个词,你要突出显示..
这样做。
DataTable dt = GetDatafromDb();
foreach(DataRow row in dt.Rows)
{
row['columnContainingText'] = row['columnContainingText'].ToString().Replace("apple","<span style='background-color:yellow'>apple</span>");
}
GridView1.DataSource=dt;
GridView1.DataBind();