2011-03-25 13 views
0

我使用Jqgrid插件來表示從數據庫中提取的xml數據。我代表從DB中提取的8列中的5列。根據列值之一,我想用獨特的顏色來表示行。 例如,如果我代表員工數據,如員工編號,名字,姓氏,加入日期,狀態(工作或離開),我希望所有在一種顏色中僱用的員工說'白色',而那些留在'灰色」。jquery - jqGrid

請讓我知道這是否可以通過自定義格式化程序完成?我無法通過rowObject,options來獲取值。

有沒有一種方法根據列值對行進行樣式設置。

在此先感謝

回答

0

我希望thisthis答案在一起的意志給你答案的問題。

+0

我得到了第一個問題解決了在自定義格式化程序中獲取rowObj,但我仍然無法獲得第二個問題的解決方案,即爲整個行(不只是一個單元格)設置背景顏色,基於單元格的其中一個值 – mayank 2011-03-27 12:45:34

+0

@mayank:如果需要修改**整行**而不是單元格的背景顏色,則自定義格式化程序是錯誤的方法。您應該在'loadComplete'事件處理程序中進行更改。 'var myrows = $(「#list tbody> tr.jqgrow」)'會給你一排行。 '$(「td:nth-​​child(」+(j + 1)+「)」,myrows [i])'會給你從第i行開始的第j個'​​'(rowid是' myrows [I] .id')。在http://stackoverflow.com/questions/5010761/linking-from-a-column-value-in-jqgrid-to-a-new-page-using-get/5017528#5017528你發現'getColumnIndexByName'它可以幫助你按名稱計算j – Oleg 2011-03-28 11:50:04

0

你好嗎,有一種方法,但不是與rowOptions,是所有的jQuery。

$('#(GridID)').find('tr td[aria-describedby="(GridID)_(ColumnIndex)"]').each(function(ind,val){ 
//Do stuffs, an example: 
$(this).text()=="Client 1"?$(this).css('background','Red'):$(this).css('background','Blue')}); 

如果你想嘗試打開該

http://jsfiddle.net/5USLz/

祝您好運!