gpt4 book ai didi

javascript - Dojo:dijit.form.filteringselect 从 Json 动态添加选项

转载 作者:行者123 更新时间:2023-11-29 22:12:09 26 4
gpt4 key购买 nike

我正在从 json 文件获取数据,现在我想将它添加到 filteringselect。我试过下面的代码,但它没有添加,请帮助我

 HTML code==
<select data-dojo-type="dijit/form/FilteringSelect"
id="education"></select>

Javascrip code==
request.get("/json/education.json", {
handleAs: "json"
}).then(function(data) {

var node = dijit.byId('education');
dojo.forEach(data.items, function(desc, index){
node.addOption({
label: desc.name,
value: desc.value
});
});

},
function(error){});


Json code

{
"title":"Education",
"items":[
{"name":"Select Education","value":"0"},
{"name":"B.A", "value":"1"},
{"name":"B.Sc" ,"value":"2"},
...........................

最佳答案

FilteringSelect 的存储可以根据 ajax 调用动态设置。

var str = new dojo.store.Memory(optionData);
dijit.byId('widgetId').set('store',str);

但是,你的 json 数据必须是这样的:-

var optionData={
data:[
{id:'aaaaaa',name:'aaaaaa'},
{id:'bbbbbb',name:'bbbbbb'}
]
};

上面的例子实际上会替换商店。如果需要将来自 ajax 调用的新数据附加到现有选项,则

 //str is the existing store of FilteringSelect field above
dojo.forEach(result.data, function(optionSet, index){
str.add(optionSet);
});

请记住:“addOption”仅适用于 Select。不适用于 FilteringSelect。

关于javascript - Dojo:dijit.form.filteringselect 从 Json 动态添加选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17565926/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com