如何在extJS中过滤商店中的数据?

时间:2017-02-06 10:02:12

标签: extjs sencha-touch

请参阅我用于过滤数据的下面的代码。

listeners: {
    keyup: function (e, t, eOpts) {
        var text = e.getValue();
        var s = Ext.getStore('TempSensorDetailsStore');
        s.clearFilter();
        if (text) {
            s.filterBy(function (rec) {
                var str = (rec.get('vehicleNo')).toLowerCase();
                var res = str.indexOf(text.toLowerCase());

                if (res == 0) {
                    return true;
                }
            });
        } else {
            s.clearFilter();
        }
    }
}

以上代码可以过滤数据,但不符合我的期望,

搜索结果显示仅与车辆编号的第一个字母匹配的记录...如果车辆中存在该字符,则应返回车辆否

例如。 车辆号为Abc-37046,如果用户搜索37046,则它还返回车辆

1 个答案:

答案 0 :(得分:0)

我得到了解决方案,

只需要更改代码

 if (res >- 1) 

而不是

 if (res == 0)