2013-04-20 14 views
7

Mój zespół chce korzystać z tej funkcji ng-grid. Jednak nie wydaje się być udokumentowane nigdzie. Chcielibyśmy umieścić ikonę "plus" w ostatniej kolumnie obszaru nagłówka ng-grid.ng-grid headerRowTemplate - Czy ktoś tego użył?

Czy ktoś znalazł dobry sposób na zrobienie tego?

+0

Jeśli moja odpowiedź poniżej pomógł Ci odpowiedzieć na to pytanie, należy rozważyć oznaczenie go jako zaakceptowanej odpowiedź ... dziękuję! – Kabb5

Odpowiedz

6

Wystarczy zmodyfikować headerCellTemplate dla ostatniej kolumny w siatce (patrz https://github.com/angular-ui/ng-grid/wiki/Templating).

Oto przykład (uwaga <img src="PLUS-ICON.png" /> w drugim wierszu):

var myHeaderCellTemplate = '<div class="ngHeaderSortColumn {{col.headerClass}}" ng-style="{\'cursor\': col.cursor}" ng-class="{ \'ngSorted\': !noSortVisible }">' + 
          '<div ng-click="col.sort($event)" ng-class="\'colt\' + col.index" class="ngHeaderText">{{col.displayName}} <img src="PLUS-ICON.png" /></div>' + 
          '<div class="ngSortButtonDown" ng-show="col.showSortButtonDown()"></div>' + 
          '<div class="ngSortButtonUp" ng-show="col.showSortButtonUp()"></div>' + 
          '<div class="ngSortPriority">{{col.sortPriority}}</div>' + 
          '<div ng-class="{ ngPinnedIcon: col.pinned, ngUnPinnedIcon: !col.pinned }" ng-click="togglePin(col)" ng-show="col.pinnable"></div>' + 
          '</div>' + 
          '<div ng-show="col.resizable" class="ngHeaderGrip" ng-click="col.gripClick($event)" ng-mousedown="col.gripOnMouseDown($event)"></div>'; 
$scope.gridOptions = { 
    data: self.myData, 
    columnDefs: [ 
     { field: 'firstField', displayName: 'First Column' }, 
     { field: 'secondField', displayName: 'Second Column' }, 
      ... 
     { field: 'lastField', displayName: 'Last Column', headerCellTemplate: myHeaderCellTemplate } 
    ] 
}; 
Powiązane problemy