2017-01-13 4 views
0

Я в настоящее время реализую angular-selectize.js (https://github.com/machineboy2045/angular-selectize), чтобы добавить окно поиска, которое будет принимать несколько значений и отфильтровать все ячейки в базе ng-Table на этих значениях без указания, какие столбцы фильтровать. Аналогично результатам создания окна поиска со входом и filter:search по адресу ng-repeat, но вместо этого фильтруется с несколькими значениями.Как фильтровать ng-таблицу с несколькими значениями в массиве.

Plunker: http://plnkr.co/edit/701op5FQ0PRJ5FOlF5Mq?p=preview

ответ

0

я создал пользовательский фильтр, и он работал. Plunker: http://plnkr.co/edit/701op5FQ0PRJ5FOlF5Mq?p=preview

.filter('filterSelectize', function($filter){ 
    return function(cars, multiArray) { 
     if(multiArray.length >= 1){ 
     var filteredCars = cars; 
     for(i=0; i < multiArray.length; i++){ 
      var filteredCars = $filter('filter')(filteredCars, multiArray[i]); 
     } 
     return filteredCars; 
     } 
     else { 
     return cars; 
     } 
    } 
    }) 
0

Вы также можете зайти на "официальную" ngTable путь с ключом фильтр $:

function applyGlobalSearch(){ 
     var term = self.globalSearchTerm; 
     if (self.isInvertedSearch){ 
     term = "!" + term; 
     } 
     self.tableParams.filter({ $: term }); 
    } 

https://codepen.io/christianacca/pen/doEbJW?editors=1010