4

我正在使用带有角度数据表的服务器端处理。无论如何要在搜索框中关闭自动过滤并使其仅在单击搜索按钮时才进行搜索/过滤(对服务器端的ajax调用)。希望有角度数据表经验的人可以提供帮助。

4

1 回答 1

8

您可以通过 4 个步骤执行此操作:

  • 取消绑定与默认搜索框关联的所有事件处理程序
  • 在搜索框旁边添加一个新的搜索按钮
  • 包括一个 DataTable 指令实例 ( dtInstance)
  • dtInstance单击新搜索按钮时执行搜索

使用initComplete回调进行修改,例如:

$scope.dtOptions = DTOptionsBuilder.newOptions()
  //other options 
  .withOption('initComplete', function() {
     $('.dataTables_filter input').unbind();
     $('<button/>').text('search').attr('id', 'new-search').appendTo('.dataTables_filter');
     $('#new-search').on('click', function() { 
       $scope.dtInstance.DataTable.search($('.dataTables_filter input').val()).draw();
     })  
   })

包含指令实例

$scope.dtInstance = {};
<table datatable dt-options="dtOptions" dt-columns="dtColumns" dt-instance="dtInstance" >

演示-> http://plnkr.co/edit/afMNeuUbwolGPffTdson?p=preview

于 2016-01-22T13:18:49.370 回答