ドロップダウンのWebサービスコンテンツから動的にロードするDijit.form.FilteringSelectがあります。
最初の要素を事前に選択したい。これどうやってするの?
ドロップダウンのWebサービスコンテンツから動的にロードするDijit.form.FilteringSelectがあります。
最初の要素を事前に選択したい。これどうやってするの?
実装によって異なります。
最初にデータをロードしてから、dojo/store/Memory
どのフィードを作成するdijit/form/FilteringSelect
場合:
// sync only for dojo/store/Memory
var store = filteringSelect1.store;
filteringSelect1.set("value", store.getIdentity(store.data[0]));
より堅牢な同期または非同期の方法は、ストアにクエリを実行することです。
when(store.query(function(item, index, items) {
return index == 0;
}), function(results) {
filteringSelect2.set("value", store.getIdentity(results[0]));
});
jsFiddle で実際に動作しているこれら 2 つの例を参照してください: http://jsfiddle.net/phusick/DaA3a/
filteringSelect
が によってバックアップされている場合dojo/store/JsonRest
、REST サービスはindex
( によるクエリに加えてid
)によるクエリをサポートする必要があります。
restStore.query({ index: 0 }).then(function(item) {
filteringSelect1.set("value", restStore.getIdentity(item));
});
jsFiddle: http://jsfiddle.net/phusick/pGt5n/で、もう少し複雑な例 ( sinon.js fakeServerを介してそのような REST サービスをシミュレートする) を参照してください。