2013-04-20 46 views
7

我的團隊想要使用ng-grid的這個特性。但它似乎沒有記錄在任何地方。我們想要做的是在ng-grid的標題區域的最後一列放置一個「加號」圖標。ng-grid headerRowTemplate - 有沒有人使用過?

有沒有人找到一個很好的方法來做到這一點?

+0

如果下面幫你回答你的問題我的回答,請考慮將其標記爲接受的答案...謝謝! – Kabb5 2015-03-16 19:33:07

回答

6

只需修改網格中最後一列的headerCellTemplate(請參閱https://github.com/angular-ui/ng-grid/wiki/Templating)。

下面是一個例子(注意在第二行<img src="PLUS-ICON.png" />):

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