在商店 ExtJS 上应用范围过滤器

Apply range filter on a store ExtJS

我有一个要求,我需要将响应中已保存的过滤器应用到 ExtJS 网格过滤器。一切都很好,但是当我在一个列上得到两个过滤器时说lt' 和 gt' numeric filter 无法过滤数据。

    var store=grid.getStore();
    store.filter({operator:'lt',value:500,property:'count'},
    {operator:'gt',value:100,property:'count'});//applying both less than 
    and greater than range filters

这里我同时发送 'lt' 和 'gt' filters.But 只有其中一个作为请求发送给 server.So 商店没有得到准确的过滤。

  • 默认情况下,商店过滤器集合中的过滤器按 "property" 分组。您可以指定 "id" 属性 来防止这种情况。
  • 您也错过了将参数作为数组传递的问题。

    store.filter([{
        id: 'count-lt',
        operator: 'lt',
        property: 'count',
        value: 500
    }, {
        id: 'count-gt',
        operator: 'gt',
        property: 'count',
        value: 100
    }]);