【问题标题】:Angular UI-Grid Header Cell TemplateAngular UI-Grid 标题单元格模板
【发布时间】:2018-03-07 11:16:39
【问题描述】:

如何设置带有文本和自定义样式的标题以保持排序和过滤功能不变。

例如:

headerCellTemplate: '<div>Stone Id <b style='color: red'>*</b></div>'

这是我的小伙伴:http://plnkr.co/edit/vy4DjRuoZ48Ced0KfWRV?p=preview

谢谢。

【问题讨论】:

    标签: angularjs angular-ui-grid ui-grid


    【解决方案1】:

    这里可以找到ui-grid header的默认模板:default header cell template

    所以你唯一要做的就是随心所欲地改变。这是您想要实现的目标:http://plnkr.co/edit/i9EFvGecvJJD9LKUBbwT?p=preview

    $scope.gridOptions = {
        columnDefs: [{
          displayName: 'Name',
          field: 'name',
          headerCellFilter: 'translate',
          headerCellTemplate: 'customTemplate.html',
          enableSorting: true,
    
        }, {
          displayName: 'GENDER',
          field: 'gender',
          headerCellFilter: 'translate'
        }, {
          displayName: 'COMPANY',
          field: 'company',
          headerCellFilter: 'translate',
          enableFiltering: false
        }]
      };
    

    自定义标题单元格模板

    <div
      role="columnheader"
      ng-class="{ 'sortable': sortable, 'ui-grid-header-cell-last-col': isLastCol }"
      ui-grid-one-bind-aria-labelledby-grid="col.uid + '-header-text ' + col.uid + '-sortdir-text'"
      aria-sort="{{col.sort.direction == asc ? 'ascending' : ( col.sort.direction == desc ? 'descending' : (!col.sort.direction ? 'none' : 'other'))}}">
      <div
        role="button"
        tabindex="0"
        ng-keydown="handleKeyDown($event)"
        class="ui-grid-cell-contents ui-grid-header-cell-primary-focus"
        col-index="renderIndex"
        title="TOOLTIP">
        <span
          class="ui-grid-header-cell-label"
          ui-grid-one-bind-id-grid="col.uid + '-header-text'">
          {{ col.displayName CUSTOM_FILTERS }}<b style='color: red'>*</b>
        </span>
        <span
          ui-grid-one-bind-id-grid="col.uid + '-sortdir-text'"
          ui-grid-visible="col.sort.direction"
          aria-label="{{getSortDirectionAriaLabel()}}">
          <i
           ng-class="{ 'ui-grid-icon-up-dir': col.sort.direction == asc, 'ui-grid-icon-down-dir': col.sort.direction == desc, 'ui-grid-icon-blank': !col.sort.direction }"
           title="{{isSortPriorityVisible() ? i18n.headerCell.priority + ' ' + ( col.sort.priority + 1 )  : null}}"
           aria-hidden="true">
         </i>
         <sub
           ui-grid-visible="isSortPriorityVisible()"
           class="ui-grid-sort-priority-number">
           {{col.sort.priority + 1}}
         </sub>
        </span>
      </div>
    
      <div
        role="button"
        tabindex="0"
        ui-grid-one-bind-id-grid="col.uid + '-menu-button'"
        class="ui-grid-column-menu-button"
        ng-if="grid.options.enableColumnMenus && !col.isRowHeader  && col.colDef.enableColumnMenu !== false"
        ng-click="toggleMenu($event)"
        ng-keydown="headerCellArrowKeyDown($event)"
        ui-grid-one-bind-aria-label="i18n.headerCell.aria.columnMenuButtonLabel"
        aria-haspopup="true">
        <i
          class="ui-grid-icon-angle-down"
          aria-hidden="true">
          &nbsp;
        </i>
      </div>
    
      <div ui-grid-filter></div>
    </div>
    

    【讨论】:

    猜你喜欢
    • 2016-09-16
    • 2019-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-05
    相关资源
    最近更新 更多