Domanda

Sto cercando di creare un DOJO DataGrid popolata utilizzando una dojo.data.ItemFileReadStore con molto semplice i dati JSON, che ha un ID e una descrizione. Quando si verifica un evento, ho bisogno di filtrare le righe visualizzate in base alla ID. Quando il suo un unico ID, posso risolvere il problema semplicemente aggiungendo myGrid.setQuery({ID:"someIdIWant"});

C'è un modo che io possa filtrare più di 1 ID nello stesso pezzo di Codde? Per ex voglio filtrare ID1 e ID2 da mostrare. Non ho un URL REST esposto, il mio dati viene popolata come variabili JavaScript. Posso comunque JsonQueryRestStore utilizzando solo i dati JSON in JS vars o dojo.data.ItemFileReadStore?

È stato utile?

Soluzione

Il dojo.data.ItemFileReadStore supporta l'utilizzo di espressioni regolari nella query. Il codice interno al ItemFileReadStore utilizza dojo.data.util.filter.patternToRegExp () per identificare se o meno il valore della stringa nella query è possibile analizzare come un'espressione regolare. Tuttavia, per essere più precisi, è possibile passare un oggetto RegExp nella query. Le due opzioni simile a questa:

myGrid.setQuery({ID:"123|124"});
    // or
myGrid.setQuery({ID: new RegExp("123|124")});

Entrambi gli esempi recuperano i due elementi con ID "123" e "124", rispettivamente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top