2015-01-01 18 views
5

UI grid edit cell özelliği üzerinde çalışıyorum. Düzenlenmiş hücre değerini dinlenme api kullanarak veritabanına güncellemem gerekiyor. Ayrıca denetleyicide seçilen satırların listesini nasıl alabilirim. Tüm sütun (colDef.name olarak) düzenlendiği hakkında bilgi ve ne varui grid Güncellenmiş hücre verilerini veritabanına kaydet

$scope.gridOptions.onRegisterApi = function(gridApi) { 
    //set gridApi on scope 
    $scope.gridApi = gridApi; 
    gridApi.edit.on.afterCellEdit($scope, function(rowEntity, colDef, newValue, oldValue) { 
    //Do your REST call here via $http.get or $http.post 

    //Alert to show what info about the edit is available 
    alert('Column: ' + colDef.name + ' ID: ' + rowEntity.id + ' Name: ' + rowEntity.name + ' Age: ' + rowEntity.age); 
    }); 
}; 

:

Benim uyguladığım kodu

var app = angular.module('app', ['ngTouch', 'ui.grid', 'ui.grid.edit']); 

    app.controller('MainCtrl', ['$scope', '$http', function ($scope, $http) { 
     $scope.gridOptions = { }; 

     $scope.gridOptions.columnDefs = [ 
     { name: 'id', enableCellEdit: false}, 
     { name: 'name' }, 
     { name: 'age', displayName: 'Age' , type: 'number', width: '10%' } 
     ]; 


     $http.get('https://cdn.rawgit.com/angular-ui/ui-grid.info/gh-pages/data/500_complex.json') 
     .success(function(data) { 
      $scope.gridOptions.data = data; 
     }); 
    }]) 

Plunker

cevap

18

denetleyicinize aşağıdaki ekleyin hücrelerin gerçek değerleri (rowEntity.xxx'da).

Artık tek yapmanız gereken REST API'nızı aramaktır (gereksiz trafiği önlemek için, içeriğin gerçekten değiştirilip değiştirilmediğini görmek için newValue'u oldValue ile karşılaştırabilirsiniz).

Verileri yeniden yüklemeniz gerekmez, çünkü değişiklikler zaten kapsam alanına uygulanır.

Burada bir forked Plunker bulabilirsiniz. Sorunuzun

İkinci kısım: satırlarınız

Yok seçilebilir. Ve bu biraz karmaşık olabilir. Lütfen bu konu hakkında yeni bir Soru (yeni Plunker ile) başlatın.

+1

teşekkürler .. çalışıyor –

+0

hala ui-grid 4.x ile düzgün çalışıyor gibi görünüyor! Teşekkürler! Bu, bulabildiğim her yerde iyi belgelenmemiş. – waffles

İlgili konular