Angular UI Grid过滤器仅适用于单元格值的开头

时间:2015-06-03 19:45:17

标签: angularjs angular-ui-grid

我在我的应用中使用Angular UI Grid。我在选项中将enableFiltering设置为true,这使得某些过滤框显示在我的列上方。这很好,但过滤器不能完全按照预期工作。

如果一个单元格包含“我喜欢披萨”的文字,并且我输入“我喜欢”,则该单元格的行显示为匹配。我也认为如果我输入“披萨”,“我喜欢披萨”的单元格/行应该出现,但事实并非如此。

如何让过滤器允许在文本中的任何位置进行搜索,而不仅仅是从头开始?

2 个答案:

答案 0 :(得分:5)

您可以在列定义中使用filter: {condition: uiGridConstants.filter.CONTAINS},以允许该列搜索文本中的任何位置。

以下是一个示例列定义:

columnDefs: [
  // default
  { field: 'name',
    filter: {condition: uiGridConstants.filter.CONTAINS} },
  ...

答案 1 :(得分:1)

您可以传递一个带有select lineupid, count(*) from Lineup_players where playerid in (A,B,C,D,E) group by lineupid having count(*) >= 3 属性的自定义过滤器对象,该属性可以是一个需要conditionsearchTerm的函数。如果函数返回cellValue,将显示。 Plunkr

true