Sencha touch sencha中的列表搜索问题

Sencha touch sencha中的列表搜索问题,sencha-touch,extjs,Sencha Touch,Extjs,我正在使用列表中的搜索选项。有向列表中添加新项目的规定。问题是,当我向列表中添加新项目时,列表正在更新,但我无法通过搜索字段搜索该项目。但在刷新浏览器后,我们可以。但不可能每次都刷新浏览器。。。。。。。这个问题有什么解决办法吗 下面是我用来搜索列表的代码 xtype: 'searchfield', placeHolder: 'Search', name: 'searchfield', id:'subListSearch', listeners : { scope: this, 'focus':

我正在使用列表中的搜索选项。有向列表中添加新项目的规定。问题是,当我向列表中添加新项目时,列表正在更新,但我无法通过搜索字段搜索该项目。但在刷新浏览器后,我们可以。但不可能每次都刷新浏览器。。。。。。。这个问题有什么解决办法吗

下面是我用来搜索列表的代码

xtype: 'searchfield',
placeHolder: 'Search',
name: 'searchfield',
id:'subListSearch',
listeners : {
scope: this,
'focus': function() {
Ext.getCmp('xbtn').show();

},

keyup: function(field) {

var value = field.getValue();

if (!value) {
Store.filterBy(function() {
return true;
});
} else {

var searches = value.split(' '),
regexps = [],
i;

for (i = 0; i < searches.length; i++) {
if (!searches[i]) return;
regexps.push(new RegExp(searches[i], 'i'));
};

Store.filterBy(function(record) {
var matched = [];

for (i = 0; i < regexps.length; i++) {
var search = regexps[i];

if (record.get('Name').match(search)) matched.push(true);
else matched.push(false);
};

if (regexps.length > 1 && matched.indexOf(false) != -1) {
return false;
} else {
return matched[0];
}
});
}
}
}
xtype:'searchfield',
占位符:“搜索”,
名称:'搜索字段',
id:“子列表搜索”,
听众:{
范围:本,,
“焦点”:函数(){
Ext.getCmp('xbtn').show();
},
键控:功能(字段){
var value=field.getValue();
如果(!值){
Store.filterBy(函数(){
返回true;
});
}否则{
var搜索=value.split(“”),
regexps=[],
我
对于(i=0;i1&&matched.indexOf(false)!=-1){
返回false;
}否则{
返回匹配的[0];
}
});
}
}
}
还有一些其他问题。我使用一些规定来过滤列表。但是当我使用搜索选项时,它是在搜索整个列表,而不是过滤列表。为什么

谢谢


Arun A G

感谢您回答我的问题。
bindStore()方法解决了这个问题。前面我正在使用load()方法将新数据呈现到存储中。但我们无法使用此方法搜索最后输入的项目。使用bindStore()方法将更改后的存储绑定到列表中后,问题就解决了。

您所说的搜索是什么意思?嗨,路易斯,我必须根据我们在搜索栏中输入的关键字筛选列表您使用的sencha版本。我试图在sencha 2.0 bt中使用相同的示例,但它不起作用。我设法显示了列表和搜索字段。但是,当我在searchfield中输入任何内容时,它会给出一个错误。未捕获的TypeError:Object[Object Object]在下面的keyup:function(field){var value=field.getValue();行中没有方法“getValue”;为了运行示例,我做了一个技巧。我没有使用getValue()函数,而是尝试了一些不同的方法,如var value=String.fromCharCode(field.browserEvent.keyCode);现在,我得到的值=我输入的搜索字符串,然后它执行procesHi Vaishali,我可以从搜索字段中检索值,并且它工作正常。问题是,添加新项后,我们无法搜索它……我使用store中的bindStore()方法解决了这个问题。