0

ID のリストを動的に配列に入力します。

var allChildNodeIDs = [];
Ext.getCmp('categoriesTreePanel').getRootNode().eachChild(function(Mynode){
        allChildNodeIDs.push(Mynode.data.idCategorie);
   });

次に、配列に含まれるすべての ID に従ってストアをフィルタリングします。たとえば、配列に 2 つの値が含まれている場合、ストアを次のようにフィルター処理する必要があります。

myStore.filterBy(function(record) {
            return (record.get('idCategorie') == allChildNodeIDs [1] && record.get('idCategorie') == allChildNodeIDs [2]);
        });

しかし、配列は動的に入力され、その長さはわかりません!

4

1 に答える 1

1

あなたの例のソート関数は常に を返すようfalseです。あなたがしたいことは、カテゴリが配列に存在するすべてのレコードを受け入れることだと思います(つまり、||の代わりに使用するつもりでした&&)。

ArrayindexOfメソッドを使用できます。

例:

myStore.filterBy(function(record) {
    return allChildNodeIDs.indexOf(record.get('idCategorie')) !== -1;
});
于 2013-06-11T12:14:11.157 に答える