2015-05-09 8 views
10

Utilizzo di ui-grid Desidero ottenere un elenco di tutte le righe di dati filtrate utilizzando il filtro.Come ottenere le righe filtrate in ui-grid?

Nel plunker di seguito ho i dati originali di 500 elementi filtrati a 61. Ora come ottengo un elenco di quelle 61 entità?

plnkr link

Se uso il seguente codice ottengo soltanto le righe resi sullo schermo

var _renderedRows = $scope.gridApi.grid.renderContainers.body.renderedRows; 

clic sul pulsante nella parte inferiore di tale plunker mostra il numero di righe filtrate che è solo 14 al contrario di 61. Che funziona perfettamente se ci sono 14 o meno nel mio filtro come posso accedere all'oggetto entità da quanto sopra. Ma non riesco a vedere alcuna proprietà nella griglia che espone le righe filtrate.

Quindi, come posso ottenere l'elenco dei 61 in modo da poterli passare in un'altra funzione per eseguire azioni su di essi?

risposta

23

Utilizzare il PublicApi per ottenere contare gli attuali righe visibili

$scope.filteredRows = $scope.gridApi.core.getVisibleRows($scope.gridApi.grid); 

Qui è la versione aggiornata di plnkr (Suggerimento: È necessario fare clic sul pulsante "Get righe filtrate")

+1

wow, il posto giusto! Grazie mille. – DeclanMcD

+1

Credo che questo renda visibili solo quelli impostati, che se il paging è abilitato si limiteranno al massimo alla dimensione della pagina. Non mi sono imbattuto in qualcosa che in particolare ottiene * tutte * le righe filtrate (attraverso tutte le pagine) ancora me stesso, ma sto cercando ... – thynctank

+0

se usi il grouping e treeNodes, la proprietà 'treeNode.row.visible === true ', ha funzionato per me, per ottenere le righe raggruppate filtrate. Senza impaginazione –

Problemi correlati