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 に答える