2015-12-10 92 views
-1

我在GridView中顯示員工詳細信息,如名稱,電子郵件,聯繫人和bday我想根據某些條件更改行的顏色(如果isActive爲0,則顯示在紅色,Isactive不是GridView列的一部分),最重要的是我不想使用RowDataBound事件(我想在.aspx頁面中執行此操作)。我正在使用Linq到EF。根據某些條件更改Gridview行顏色而不使用rowdatabound事件

+0

任何具體的原因,你不想做的'RowDataBound'事件代碼?還張貼一些代碼。 –

回答

1

您可以使用jQuery這個

$("#GridViewId tr").each(function() 
{ 
if($(this).find("td:eq(3)").text()=="0") 
$(this).css('color','red'); 
}); 

這將尋找在gridview第4列值0。您可以將其更改爲此列所在的位置。從0

+0

如果IsActive不是gridview中的列,該怎麼辦? –

+0

所以你需要一些專欄,你可以做到這一點。 – Mairaj

+0

您可以添加一個數據激活屬性來使用JQuery過濾@Mairaj Ahmad。你可以把你已經完成的HTML代碼? – D4rkTiger

-1

Index開始嘗試在RowDataBound

protected void Grd_RowDataBound(object sender, GridViewRowEventArgs e) 
    { 
     if (e.Row.RowType == DataControlRowType.DataRow) 
     { 

      string isActive = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "isActive")); 

      if (isActive == "0") 
      { 
       e.Row.BackColor = System.Drawing.ColorTranslator.FromHtml("#28b779");//81F79F 
       e.Row.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF"); 
      } 
      else 
      { 
       e.Row.BackColor = System.Drawing.ColorTranslator.FromHtml("#da5554");//F78181 
       e.Row.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF"); 
      } 
     } 
    } 
+0

在問題中我明確提到我不想使用RowDatabound事件。 –

+0

爲什麼不使用RowDatabound事件? –

+0

這並沒有回答這個問題。這是一個很好的解決方案,但不適用於這個主題。 – D4rkTiger

相關問題