Я использую модуль ngGrid для AngularJS, чтобы отображать некоторые выгружаемые данные. Я хочу иметь возможность выполнять поиск по нескольким столбцам, но используя поиск по ИЛИ.
Допустим, у меня есть столбец со следующими заголовками: Id, Name, Description. Когда я выполняю поиск, я хочу вернуть все строки, в которых идентификатор ИЛИ имя ИЛИ описание содержат поисковый запрос.
$scope.pagingOptions = {
pageSizes: [20, 50, 100],
pageSize: 20,
totalServerItems: 0,
currentPage: 1
};
$scope.gridOptions =
{
data: 'myData',
columnDefs: [
{ field: 'id', displayName: 'Id' },
{ field: 'name', displayName: 'Name' },
{ field: 'description', displayName: 'Description' },
{ displayName: 'Actions', cellTemplate: '<input type="button" data-ng-click="doSomething(row.entity)" value="Do Something" />'}],
enablePaging: true,
showFooter: true,
showFilter: true,
pagingOptions: $scope.pagingOptions,
filterOptions: {
filterText: "",
useExternalFilter: false
}
};
Я попытался использовать поле поиска по умолчанию, а также использовать внешнее поле ввода, привязанное к $ scope.filterText, чтобы определить настраиваемый фильтр, например:
$scope.filterUpdated = function () {
$scope.gridOptions.filterOptions.filterText = 'id:' + $scope.filterText + ';name:' + $scope.filterText + ';description:' + $scope.filterText;
};
Однако, похоже, это делает И для всех столбцов. Можно ли добиться того, чего я хочу, с помощью модуля ngGrid?
Заранее спасибо,
Крис