2012-07-18 23 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

相关问题