2013-02-01 82 views
0

有沒有辦法讓我獲得jqGrid上所選行的列名?例如,在小提琴上:http://jsfiddle.net/5B2Wh/43/獲取所選行的列名jqGrid

如果我點擊內容爲「合併C」的單元格,它將返回「客戶端」,它是它所在的列名稱。

我嘗試使用下面的代碼,但它只發送未定義。

var cm = jQuery("#scrgrid").jqGrid("getGridParam", "colModel"); 
alert(cm.name); 
+0

你寫的和「如果我*點擊了電池*」的「*選擇的行*的列名」。你想在哪個回調中獲得點擊列的名稱:onCellSelect,inSelectRow或onSelectRow?您可以在JsFiddle演示中使用jqGrid的非常舊的4.0版本。是你必須使用的版本還是你可以使用更新的版本,如當前的4.4.4版本?問題是'onSelectRow'在版本4.0中** **參數不如當前版本4.4.4。 – Oleg

回答

1

colModel是一個數組,你必須從中選擇相關的列。

$("#scrgrid").jqGrid({ 
    ... 
    onCellSelect: function(row, col, content, event) { 
     var cm = jQuery("#scrgrid").jqGrid("getGridParam", "colModel"); 
     alert(cm[col].name); 
    } 
}); 

但是,這不適用於您的網格,因爲您已啓用編輯功能,從而禁用選擇單元格的功能。

0

做:

...onCellSelect: function(id,cellidx,cellvalue) { 
    var cm = jQuery("#list").jqGrid("getGridParam", "colModel"); 
    var colNameAttr = cm[cellidx]; 
    console.log(colNameAttr.name); //gives column name 
} 
...