Как да филтрирате данни в ng-grid въз основа на диапазон от дати

С помощта на $scope.gridOptions.filterOptions.filterText мога да филтрирам данните си. Например, за да филтрирам въз основа на Държава на местоназначение, задавам filterText като:

$scope.gridOptions.filterOptions.filterText += 'DestinationCountry:' + $scope.filter.DestinationCountry + ';';

Въпреки това не мога да разбера как да филтрирам колона с дата въз основа на диапазон от дати, т.е. между дата от и до дата.


person Moiz    schedule 02.12.2013    source източник


Отговори (1)


Наскоро проучих същия въпрос. Не вярвам, че е възможно да филтрирате колона с дата по диапазон с помощта на filterOptions.filterText от ng-grid v2.0.7. Причината е, че ng-grid изпълнява филтър за регулярен израз на низовото представяне на данните. Ако погледнете код тук, ng-grid изпълнява cellFilter за дадената колона и след това търси резултантния низ. Ще има някои случаи, в които бихте могли да създадете подходящ регулярен израз, като се има предвид, че знаете формата на датата на cellFilter (напр. „201[01]“ за търсене на 2010 и 2011), но това няма да работи за всеки случай на филтриране на дата, който бихте имали .

Това оставя най-добрия ви вариант като филтриране от страна на сървъра. Разбира се, винаги можете да отворите проблем в github и да поискате тази функционалност в бъдеща версия. Освен това може да е възможно да напиша плъгин за филтриране на редовете с персонализирана функция, но все още не съм се задълбочил в това.

person Geoff    schedule 23.01.2014