私はこのようなことを達成したいと思います:
filteringSelect.query = {id: "12|13"};
また
filteringSelect.query = {id: new RegExp("12|13")};
出来ますか?
その FilteringSelect のストアとして ItemFileReadStore を使用しています。
私はこのようなことを達成したいと思います:
filteringSelect.query = {id: "12|13"};
また
filteringSelect.query = {id: new RegExp("12|13")};
出来ますか?
その FilteringSelect のストアとして ItemFileReadStore を使用しています。
さらに詳しく知りたい場合は、dijit.form.ComboBox / dijit.form.FilteringSelect サブクラスのあいまい一致を参照してください。ただし、これはユーザー入力をフィルタリングするためのものです。
フィルタリング選択で何かを開く/入力する前にエントリをフィルタリングするには、すでに行っていることを続けます。ただし、単純な文字列は OR 演算子を受け入れませんRegExp
。
var store = new ItemFileReadStore( {
query: {
id: new RegExp("/^(12|13)$/")
}
} );
開始点として、すべてのアイテムがストアに存在します。クエリエンジンを利用する方法は次のとおりです。fetch
store.fetch({
query: {
// yes, you can set the query property directly
// in the store and leave out this parameter
id: new RegExp("^(1|12)$")
},
onComplete: function(items) {
dojo.forEach(items, function(item) {
console.log(store.getValue(item, 'name'))
});
}
})
使用例についてはhttp://jsfiddle.net/LuUbT/を参照してください