2011-01-09 74 views
0

我正在使用ASP.NET MVC的jqGrid,並有一個子網格的網格。在該次網格,我添加了一個按鈕,工具欄,如下所示:jqGrid工具欄CustomButton OnClick:如何獲取父網格行ID?

ToolBarSettings = new ToolBarSettings() 
{ 
    ShowRefreshButton = true, 
    CustomButtons = new List<JQGridToolBarButton>() 
     { 
      new JQGridToolBarButton() 
       { 
        Text = "Custom", 
        Position = ToolBarButtonPosition.Last, 
        OnClick="CustomClick" } 
       } 
     }, 
    etc... 
} 

的CustomClick是一個JavaScript回調,並觸發沒有任何問題,但我有麻煩父網格行ID在CustomClick回電話。

如何在CustomClick函數中獲取父行ID?

感謝,丹尼斯

回答

0

裏面你有作爲this表的DOM元素CustomClicķ功能從導航器自定義按鈕被點擊。有沒有「父行」,但你可以每

var rowid = $(this).jqGrid('getGridParam', 'selrow'); 

看到the following answer奧德搜索另一個例子的navButtonAdd方法示例獲取當前所選行的ID(如果有的話)。

+0

奧列格 - 我想你的榜樣上面,但我剛剛得到「未定義」的rowid(我在父網格和子網格中都選擇了一行)。任何其他想法? – 2011-01-10 03:24:43

1

子網格ID本身包含parentKey。當創建子網格時,子網格的ID是ParentGridName_ParentKey_ChildGridName。所以,你可以得到父鍵

下面是對自定義按鈕的代碼:

<CustomButtons> 
<Trirand:JQGridToolBarButton ToolTip="Custom button" OnClick="GetParentKey" />               
</CustomButtons> 

然後GetParentKey函數裏面,你可以得到parentKeyID如下:

function GetParentKey() 
{ 
var GridId = this.id.toString().split('_'); 
var parentKey = GridId[1]; 

}