我们正在使用ngGrid。我想知道是否有办法在Excel中创建多列过滤器?
一直在网上搜索,但我发现的大部分内容都是使用单个文本框过滤器来过滤所有列(虽然一次只能过滤一次)。
任何帮助将不胜感激。
谢谢!
答案 0 :(得分:4)
也许尝试使用filterBar插件。
var filterBarPlugin = {
init: function(scope, grid) {
filterBarPlugin.scope = scope;
filterBarPlugin.grid = grid;
$scope.$watch(function() {
var searchQuery = "";
angular.forEach(filterBarPlugin.scope.columns, function(col) {
if (col.visible && col.filterText) {
var filterText = col.filterText +'; ';
searchQuery += col.displayName + ": " + filterText;
}
});
return searchQuery;
}, function(searchQuery) {
filterBarPlugin.scope.$parent.filterText = searchQuery;
filterBarPlugin.grid.searchProvider.evalFilter();
});
},
scope: undefined,
grid: undefined,
};
这是一个Plunker来展示它的实际效果。
这个插件不是我写的,我不记得我在哪里找到它。我刚刚在Question中使用过它。 (见评论)