角度数据集集可搜索的错误

时间:2015-09-23 09:16:58

标签: angularjs angular-datatables

我正在尝试在特定列上设置搜索禁用。 我使用这个角度数据服务器端。

https://l-lin.github.io/angular-datatables

通常在jquery上我可以:

 columns:[{data:"foo", name:"foo", searchable:false}]

我尝试过使用:

   $scope.dtOptions = DTOptionsBuilder.newOptions()
            .withOption('ajax', {
                url: apiRoot + 'merchant-list'
            })
            .withDataProp('data')
            .withOption('serverSide', true)
            .withOption('order', [0, 'asc'])

  $scope.dtColumns = [
            DTColumnBuilder.newColumn('name', 'Name'),
            DTColumnBuilder.newColumn('type', 'Type'),
            DTColumnBuilder.newColumn('username', 'Username'),
 ]

 $scope.dtColumnDefs = [
            DTColumnDefBuilder.newColumnDef(0),
            DTColumnDefBuilder.newColumnDef(1).withOption('searchable', false),
            DTColumnDefBuilder.newColumnDef(2).withOption('searchable', false)
        ]

似乎有效,但是columnDef的位置不正确。 当我将newColumnDef(1)搜索为false时,不应该搜索的列应该是第二列,但显然它会禁用第一列。

有没有办法让它禁用搜索特定列并订购它?

由于

编辑: 我试过'orderable',false和notvisible正在使用columnDef 0.看起来只有可搜索的是失败。

2 个答案:

答案 0 :(得分:7)

必须在数组中声明DTColumnBuilderDTColumnDefBuilder项:

$scope.dtColumns = [
   DTColumnBuilder.newColumn('name', 'Name').withOption('searchable', false)
   ...
]

然后它起作用 - >的 http://plnkr.co/edit/OOikiBKdLE8R1UEXLyMH?p=preview

$scope.dtColumnDefs = [
   DTColumnDefBuilder.newColumnDef('name', 'Name').withOption('searchable', false)
];

答案 1 :(得分:4)

$scope.dtOptions = {searching:false}

可以使用最新的角度版本。