按名称选择列,但角度数据表不起作用

时间:2017-05-04 23:57:38

标签: angularjs datatables

使用角度数据表,我需要按名称选择一列。 我在https://datatables.net/reference/api/columns()中读过数据表文档,但我没有成功。

在下面的代码中,我尝试过:

oTable.column('id') 

oTable.column('id:name')

但是,他们没有工作。

$scope.search = function(query) {
 var oTable = $scope.dtInstance.DataTable;
 //oTable.column('id:name').search($scope.busca.query).draw() ; doesn't works 
 oTable.column('id').search($scope.busca.query).draw() ; //doesn't works 
}  

$scope.dtColumns=[
            DTColumnBuilder.newColumn('id', 'Pront'),
            DTColumnBuilder.newColumn('nome', 'Nome').withOption('searchable', false),
            DTColumnBuilder.newColumn('endereco', 'Endereco').notSortable().withOption('searchable', false),
            DTColumnBuilder.newColumn('cidade', 'Cidade').notSortable().withOption('searchable', false),
            DTColumnBuilder.newColumn('cpf', 'CPF').notSortable().withOption('searchable', false),
            DTColumnBuilder.newColumn('telres', 'Telefone').notSortable().withOption('searchable', false),
            DTColumnBuilder.newColumn('email', 'E-Mail').notSortable().withOption('searchable', false),
            DTColumnBuilder.newColumn(null).withTitle('Opçoes').notSortable().withOption('searchable', false)
            .renderWith(actionsHtml)
            ];

1 个答案:

答案 0 :(得分:2)

必须明确地为该列添加name以使:name选择器生效:

$scope.dtColumns = [       
  DTColumnBuilder.newColumn('name').withOption('name','name').withTitle('name'),
  DTColumnBuilder.newColumn('position').withOption('name','position').withTitle('position')
];

现在你可以这样做:

$scope.dtInstance.DataTable.column('position:name').search('acc').draw();

看到它在这里工作 - >的 http://plnkr.co/edit/bLNM5Qu9kFX0A5fLdfPZ?p=preview