2012-07-18 53 views

回答

2

您可以訂閱onPagingInfoChanged事件 - 當您導航到新頁面時觸發事件 - 然後將選定的行從該頁面存儲到全局數組中供您參考。

dataView.onPagingInfoChanged.subscribe(function(e,pagingInfo) { 
    console.log(grid.getSelectedRows()); 
    // add selected rows to a global array 
} 

注:進一步你所提到的,在grid.getSelectedRows()返回的行數相對可見行。因此,第2頁上的行將從0開始。我建議取而代之將該行的id並將其存儲在全局數組中(您知道,數據視圖中的每一行應具有哪一行並且哪一行是唯一的)。

希望這給你一個開始。讓我知道如果這有幫助!

+1

那正是我所做的。我正在監聽onSelectedRowsChanged事件,並從那裏填充全局數組。感謝您的回答和幫助。我認爲這種行爲需要進入fw。開發人員需要掌握全局列表,才能運行批量操作。 – neoswf 2012-07-19 14:56:32

+0

我正在檢查每個複選框單擊的原因是啓用或禁用批量操作按鈕。在切換頁面之前,用戶可以始終取消選中所有複選框。 – neoswf 2012-07-19 15:13:33

+0

非常歡迎你! SlickGrid設計是爲了保持內存中只有可見的行 - 我認爲這是如此之快。我認爲這就是以這種方式實施的原因。有趣的是,儘管玩 - 但我們有特殊需求的解決方法! :) – ganeshk 2012-07-19 15:24:21

相關問題