Extjs store.filter按日期范围

时间:2012-06-04 17:22:45

标签: javascript extjs extjs3 date-range

这是我的代码,我试图通过允许它作为日期范围来过滤'CollectTime'。

我没有在文档中看到我可以添加此内容,也没有看到显示此工作正常的示例。

有人能指出我正确的方向吗?

listeners: {
    'load': function(store) {
            if ('color' in $_GET) {
                    store.filter([
                            {property: 'color' , value: $_GET['color'] , anyMatch: true , caseSensitive: false}
                    ]);
            }
            if ('priority' in $_GET) {
                    store.filter([
                            {property: 'precedence' , value: $_GET['priority'] , anyMatch: true , caseSensitive: false}
                    ]);
            }
            if ('startdate' in $_GET) {
                    store.filter([
                            {property: 'CollectTime' , value: $_GET['startdate'] , anyMatch: true , caseSensitive: false}
                    ]);
            }
    }

}

1 个答案:

答案 0 :(得分:4)

使用filterBy方法代替过滤器并提供过滤功能

这是一个例子:

...
if ( 'startdate' in $_GET ) {
    store.filterBy( function( rec, id ){
        return rec.data.CollectTime >= $_GET['startdate'] && rec.data.CollectTime <= $_GET['enddate'];
    } );
}
...