kit*_*sei 4 javascript angularjs angular-ui-grid
这个答案说明这段代码:
$scope.gridOptions.onRegisterApi = function(gridApi){
$scope.gridApi = gridApi;
$scope.mySelectedRows=$scope.gridApi.selection.getSelectedRows();
}
Run Code Online (Sandbox Code Playgroud)
应该工作以获取所选行,但对我来说它总是返回[],以跟踪gridApi.selection.getSelectedRows()每次触发选择事件时我必须调用的所选行,这是正确的吗?
我想要实现的是自己的页脚跟踪网格选定行的数量,这是实现这一目标的正确方法吗?
我让它工作而不必使用事件触发器。我添加了一个功能,将其绑定到一个按钮,并且仅在需要时才可以检索所选项目。
$scope.gridOptions = {
data: 'data',
enableRowSelection: true,
onRegisterApi: function(gridApi) { //register grid data first within the gridOptions
$scope.gridApi = gridApi;
}
};
//this is the on click function
$scope.getCurrentSelection = function() {
var currentSelection = $scope.gridApi.selection.getSelectedRows();
console.log(currentSelection);
};Run Code Online (Sandbox Code Playgroud)
已经有一个示例显示页脚中所选元素的数量.
此plnkr显示所选项目页脚.http://plnkr.co/edit/jc1YPCXBmfOKWyu8sLkx?p=preview
如果要对所选行进行进一步分析,可以为行选择注册一个侦听器并对其进行操作.
$scope.gridOptions.onRegisterApi = function(gridApi){
//set gridApi on scope
$scope.gridApi = gridApi;
gridApi.selection.on.rowSelectionChanged($scope,function(row){
var msg = 'row selected ' + row.isSelected;
$log.log(msg);
});
gridApi.selection.on.rowSelectionChangedBatch($scope,function(rows){
var msg = 'rows changed ' + rows.length;
$log.log(msg);
});
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16929 次 |
| 最近记录: |