2015-04-09 30 views
5

Seçilmiş bir satır var ve bazı düğmesini tıklatarak (şu anda AngularHotkeys.js aracılığıyla boşluk kullanıyorum) Geçerli satırın seçimini kaldırmak ve seçili olandan sonra olanı seçmek istiyorum.Köşeli UI kılavuzunda sonraki satırı nasıl seçilir?

Tabloyu farklı sütunlarla sıralayabileceğimi bilerek daha karmaşık bir şey. Bu yüzden, geçerli satırın geçerli dizinin uygulandığı dizini bilmek harika olurdu.

Bu sorunla nereden başlıyorum?
Herhangi bir öneri takdir edilir.

+1

IMHO bakınız:

Kodunuz gibi bir şey olurdu. – ABOS

cevap

-1

Seni doğru anlarsam, istediğin şeyi bu şekilde yapabilmelisin. $scope.gridApi.grid.renderContainers.body.visibleRowCache dan, onların sıralı ve filtre halde, Sen satır dizi alabilirsiniz

$scope.scrollTo = function(rowIndex) { 
    $scope.gridApi.core.scrollTo($scope.gridOptions.data[rowIndex], 0); 
}; 

$scope.nextRow() { 
    var current = $scope.gridApi.selection.getSelectedRows(); 
    scrollTo(current + 1); 
} 

Alkış

2

(yani test etmek yoktu). Ayrıca, varlığa sahip olduğunuzda ve gridRow’a sahip olduğunuzda başa çıkmanız gereken bir takım hileler de vardır, bu yüzden kod biraz karmaşıklaşır. Ben her satır için bir kimliği takmak ve satır kimliği tarafından seçersiniz,

$scope.selectNextRow = function() { 
    var currentRowIndex; 
    var selectedRows = $scope.gridApi.selection.getSelectedRows(); 
    if(selectedRows.length < 1){ 
    // if nothing selected, we'll select the top row 
    currentRowIndex = -1; 
    } else { 
    // if there are multiple selected, we use the first one 
    var selectedRow = selectedRows[0]; 
    var gridRow = $scope.gridApi.grid.getRow(selectedRow); 
    currentRowIndex = $scope.gridApi.grid.renderContainers.body.visibleRowCache.indexOf(gridRow); 
    } 

    $scope.gridApi.selection.clearSelectedRows(); 
     $scope.gridApi.selection.selectRow($scope.gridApi.grid.renderContainers.body.visibleRowCache[currentRowIndex + 1].entity); 
}; 

http://plnkr.co/edit/Z7HCjVY6oxGJzyjLI6Qo?p=preview

+0

Büyük yardım - bu sütunları saklarken ve bir sonraki satıra sarmak gerektiğinde benim için harika çalıştı. –

İlgili konular