2015-02-26 8 views
5

ho ottenuto il seguente gridOptions.columnDefsangolare UI griglia, l'aggiunta di un pulsante a una cella della riga tramite template

$scope.generateReport = function(row) { 
    alert("Test"); 
}; 

$scope.gridOptions.columnDefs = [ 
    { name: 'Action', 
     cellEditableCondition: false, 
     cellTemplate: '<button ng-click="grid.appScope.generateReport(row)"> 
         Report 
         </button>' 
    }]; 

Non funziona, il pulsante mostra, ma una volta cliccato il suo non chiamare la funzione. Sto seguendo la loro guida Here e sto usando ui-grid - v3.0.0-RC.18.

Ho ottenuto quanto segue per il mio html.

 <div id="grid1" 
      ui-grid="gridOptions" 
      ui-grid-cellnav 
      ui-grid-edit 
      ui-grid-expandable 
      ui-grid-exporter 
      class="myGrid"> 
     </div> 

Ho anche cercato di aggiungere un external-scope, ma non ha fatto la differenza ..

Tutte le idee?

risposta

4

Il mio ng-clic per un pulsante in una riga della griglia è simile a questo.

ng-click="getExternalScopes().delete($event, row) 

Il mio controller ha $ scope iniettato e la prima riga crea il riferimento (credo) all'ambito esterno.

app.controller("MyController", function ($scope) { 
$scope.$scope = $scope; 

L'HTML si presenta così, che si riferisce all'ambito esterno.

<div ui-grid="gridOptions" class="someClass" external-scopes="$scope" ui-grid-selection ui-grid-resize-columns></div> 

Ecco tutta la mia CellTemplate se aiuta ...

<div class="ui-grid-cell-contents ng-binding ng-scope"><button class="btn btn-danger {{getExternalScopes().deleteButtonClass(row)}} btn-xs btn-block" ng-click="getExternalScopes().delete($event, row)"><span class="glyphicon glyphicon-trash"></span></button></div> 
+0

appena letto su un altro post che esterno-scope viene lentamente deprecato. Funziona nella versione che sto usando ora, che è un mese o due vecchi. Vedi http://stackoverflow.com/questions/26688746/conditional-cell-template-in-ui-grid-angularjs?rq=1 –

+1

Ho aggiornato alla loro ultima release RC20 e funziona correttamente con 'grid.appScope.generateReport' . Avevo R18 e presumibilmente avrebbe dovuto funzionare anche con quella versione. Quale versione stai usando nel tuo esempio? – Dayan

+0

Sto usando v3.0.0-RC.18. Ho aggiornato di recente all'ultima versione, ma il comportamento di tabulazione delle griglie modificabili era cambiato drasticamente, quindi per il momento sono tornato alla versione precedente. Sembra che tu abbia avuto una discrepanza tra documentazione e codice? –

Problemi correlati