ng-table:单击按钮时清除表格内容

时间:2016-12-22 15:10:17

标签: angularjs ngtable

我可以在点击按钮时显示数据。如何清除表内容?

HTML

 <div ng-app="myApp">
  <div ng-controller="tableControl as vm">
    <button class="btn btn-default" ng-click="vm.show()">Show</button>
    <button class="btn btn-default" ng-click="vm.clear()">Clear</button>
    <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>
  </div>
</div>

尝试将 tableParams 设置为null但没有帮助。

  self.show = function() {
    self.tableParams = new NgTableParams({
      page: 1, // show first page
      count: 10 // count per page
    }, {
      dataset: data
    });
  }

  self.clear = function() {
  self.tableParams = null;
  }

以下是fiddle

1 个答案:

答案 0 :(得分:3)

这不起作用,因为你必须清除dataset对象。

重置dataset数组并调用reload()函数:

self.clear = function() {
    self.tableParams.settings().dataset = [];
    self.tableParams.reload();
}

......它会起作用! :)