2015-05-19 24 views
3

我需要將選擇設置爲新添加的行。 當輸入$scope.gridApi.selection.selectRow(newObject)時,網格的行模型沒有新行,因此無法選擇它。 方法addRow完成後,網格顯示新的行(和數據),但未做出選擇。如何將行選擇設置爲新添加的行?

我的測試代碼:

$scope.addRow = function() { 
    $scope.gridOptions.data.unshift({ 
     // my new data object 
    }); 

    var newObject = $scope.gridOptions.data[0]; 
    $scope.gridApi.selection.selectRow(newObject); 
}; 

我怎樣才能實現這種行爲?

在我需要聽的angularjs ui-grid中是否存在類似'rowAdded'的事件? 是否有任何地方有ui-grid發起的事件的全面列表?

感謝您的幫助!

回答

4

你可以在行,列等事件監聽器。該文件是在這裏http://ui-grid.info/docs/#/api/ui.grid.class:Grid

可以在onRegisterApi添加數據聽衆像下面,

onRegisterApi : function(gridApi) 
      { 
       if(!$scope.gridApi) 
       { 
        $scope.gridApi = gridApi; 
        $scope.gridApi.grid.registerDataChangeCallback(function(data) 
        { 
         $scope.gridApi.selection.selectRow($scope.gridOptions.data[0]); 
        }, [uiGridConstants.dataChange.ROW]); 
       } 
      } 

,並選擇您要選擇的任何行。

這是一個工作plnkr。 http://plnkr.co/edit/NjnMb65w86L0bKmkkJp0?p=preview

相關問題