2013-04-20 6 views
7

Mein Team möchte diese Funktion von ng-grid nutzen. Es scheint jedoch nirgendwo dokumentiert zu sein. Was möchten wir tun, ist ein "Plus" -Symbol in der letzten Spalte des Header-Bereich eines NG-Grid.ng-grid headerRowTemplate - Hat jemand das benutzt?

Hat jemand einen guten Weg gefunden, dies zu tun?

+0

Wenn meine Antwort unten helfen Sie Ihre Frage zu beantworten, beachten Sie bitte als akzeptierte Antwort Kennzeichnung ... Danke! – Kabb5

Antwort

6

Ändern Sie einfach die headerCellTemplate für die letzte Spalte in Ihrem Raster (siehe https://github.com/angular-ui/ng-grid/wiki/Templating). Hier

ist ein Beispiel (beachten Sie <img src="PLUS-ICON.png" /> in der zweiten Zeile):

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 } 
    ] 
};