【问题标题】:Disable ngTable sorting禁用 ngTable 排序
【发布时间】:2016-10-09 12:29:21
【问题描述】:

我有一个相当普通的 ng-table,我为它提供了以下参数:

$scope.newRoomsTableParams = new NgTableParams(
  {
    sorting: {}
  },
  {
    total: 0,
    getData: getNewRoomsData,
    counts: []
  }
);

我想对表的所有列完全禁用 ng-table 的排序功能。具体来说,我希望列标题不可点击并且没有向上/向下箭头。

这可能吗?

编辑#1:我想问题真的归结为解释ng-table documentation,我目前无法弄清楚。

编辑 #2:getNewRoomsData 函数为空

function getNewRoomsData() {
  return $scope.newRoomsData;
}

【问题讨论】:

  • 要关闭列的排序,请将列的sortable 属性设置为false。
  • 您应该能够查看ng-table.com/#/sorting/demo-enabling 文档中的代码,以了解如何将其应用于您的数据集。
  • @Claies 你的意思是在数组还是哈希中?你能帮我举个例子吗?
  • 这将在 getNewRoomsData 函数中完成。您可以发布该功能的内容以供审核吗?
  • @Claies 当然。它目前是空的。 $scope.newRoomsData 是一个数组。在编辑中添加了上面的功能。

标签: angularjs ngtable


【解决方案1】:

在视图(html 代码)中删除标签<td> 的filter 和sortable 参数。

例如,改变这个:

<table ng-table="vm.tableParams" class="table" show-filter="true">
  <tr ng-repeat="user in $data">

    <td title="'Name'" filter="{ name: 'text'}" sortable="'name'">
      {{user.name}}
    </td>

    <td title="'Age'" filter="{ age: 'number'}" sortable="'age'">
      {{user.age}}
    </td>

  </tr>
</table>

到这里:

<table ng-table="vm.tableParams" class="table" show-filter="true">
  <tr ng-repeat="user in $data">

    <!-- L@@k here below! -->

    <td title="'Name'">
      {{user.name}}
    </td>

    <td title="'Age'">
      {{user.age}}
    </td>

  </tr>
</table>**

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 2015-10-23
    • 1970-01-01
    相关资源
    最近更新 更多