我有这个函数来过滤值以实现自动完成功能:
store.filter(new Ext.util.Filter({
filterFn: function (object) {
var match = false;
Ext.Object.each(object.data, function (property, value) {
match = match || value.match(Ext.getCmp('search_input_text').getValue());
});
return match;
}
我需要它不区分大小写,以便大小写相同。
value.match(Ext.getCmp('search_input_text').getValue());
类似sql中的LIKE
。我怎样才能做到这一点?
最佳答案
- Regexp 有一个使用字符串参数的构造函数。
如果您需要 bool 结果,请不要使用match,而是使用test。
store.filter(new Ext.util.Filter({ filterFn: function (object) { var match = false; Ext.Object.each(object.data, function (property, value) { var filterValue = Ext.getCmp('search_input_text').getValue(); var r = new RegExp(filterValue, 'i'); match = match || r.test(value); }); return match; } ... }
关于JavaScript/不区分大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13835023/