Javascript Extjs存储过滤-包括元字符
我有一个数据存储,有一个Note字段和一个textarea,并希望显示所有满足用户输入的Note,甚至是元字符 我编写了以下函数来处理此问题:Javascript Extjs存储过滤-包括元字符,javascript,regex,extjs,Javascript,Regex,Extjs,我有一个数据存储,有一个Note字段和一个textarea,并希望显示所有满足用户输入的Note,甚至是元字符 我编写了以下函数来处理此问题: function notefilter() { var newfilter = Ext.getCmp('searchnote'); var searchStr = newfilter.getValue(); searchStr = searchStr.replace('?', '\\?').replace('*', '\\*').
function notefilter() {
var newfilter = Ext.getCmp('searchnote');
var searchStr = newfilter.getValue();
searchStr = searchStr.replace('?', '\\?').replace('*', '\\*').replace('+', '\\+').replace('{', '\\{').replace('}', '\\}').replace('[', '\\[').replace(']', '\\]').replace('(', '\\(').replace(')', '\\)').replace('|', '\\|').replace('$', '\\$').replace('^', '\\^');
var re = new RegExp(".*" + searchStr + ".*", "ig");
Ext.getCmp('notesgrid').store.filter('Note', re);
}
但是,即使在转义元字符之后,过滤器也无法搜索元字符,但是当所有其他字母数字输入时,它仍然有效
我错过什么了吗
提前谢谢 最后,过滤器开始工作。JavaScript内置的escape&encodeuri组件为我完成了这项工作。我不必通过编程来逃避元字符