0

我怎样才能在我的网格过滤中做这样的事情

var filters = [
   {
       fn: function (item) {

           return (item.get('Name') == new RegExp(".*" + productValue + ".*"))
                  && item.get('IsActive') == activeValue;
       }
   }
];

这部分是我想要得到的,但它不起作用

(item.get('Name') == new RegExp(".*" + productValue + ".*"))
4

1 回答 1

1

这不是 RegExp 的工作方式。那应该是:

(new RegExp(productValue)).test(item.get('Name'))

请参阅文档RegExp及其test方法。

请注意,如果您不添加^(开始)或$(结束)标记,则正则表达式将匹配任何地方,因此您不必添加“。*”。

现在,对于这个简单的测试,您只需要做:

item.get('Name').indexOf(productValue) !== -1
于 2013-06-16T14:40:04.713 回答