Search code examples
angularjsangular-ui-grid

How to access row data upon row Selection


I'm using ui-grid to display data.

I want to access a column's value when a row is selected. I've implemented a rowSelectionChange event, but I can't seem to access the data.

gridOptions:

$scope.gridOptions = {
paginationPageSizes: [10, 25, 50],
paginationPageSize: 25,   
useExternalPagination: true,
useExternalSorting: true,
multiSelect: false,
enableSelectAll: false,
columnDefs: [
  { name: 'Name', field: 'properties.Name'},
  { name: 'Address', field: 'properties.Address'},
  { name: 'PhoneNumber', field: 'properties.PhoneNumber'}
],

onRegisterApi: function(gridApi) {
    $scope.gridApi = gridApi;
    $scope.mySelectedRows = $scope.gridApi.selection.getSelectedRows();
    gridApi.selection.on.rowSelectionChanged($scope, function(row) {
        var msg = row.entity.Name;
        alert("Row Selected! " + msg);
    });
...

What am I missing?


Solution

  • Found the solution by adding a breakpoint and looking at the value of row.entity. Changing it to row.entity.properties.Name fixed my problem.