2013-03-02 56 views
1

我有一個GridView,顯示了很多文本我想突出顯示一個特定的單詞,而我在文本之間導航時,我想突出顯示它總是我的意思不是從搜索或其他東西后,讓我們假設我在gridview中有以下文本「我會在早上有一個蘋果,在晚上有一個蘋果」我想通過文本突出顯示單詞「apple」在gridview裏面,我嘗試了一個java腳本,但沒有發生任何事情!謝謝。我想突出顯示一個GridView中的特定單詞在asp.net C#

回答

3

您需要將基本的html標籤包裝到您所需的單詞中以便做到這一點。

因此改變你的字符串

"I would have an apple in the morning.."

"I would have an <span style='background-color:Yellow;'>apple </span>in the morning..".

,一切都將開始工作。

現在你可以在任何地方做到這一點。

  1. 通過JavaScript
  2. 通過服務器側即前處理您數據源爲這樣的字符串。即在代碼中相應地修改您的數據源內容。

通過javascript/jquery,你可以這樣做: a。 Gridview被呈現爲純html格式的表格,所以無論您提供給gridview的標識是什麼,都將是表格的標識。抓住它使用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的二縱一表具有該字符串(句子),要突出顯示其詞之一..

做到這一點。

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(); 
+0

謝謝!這正是我所需要的! – MRK 2013-03-03 06:56:48

+0

將其標記爲答案:) – 2013-03-03 07:27:47