dijit.form.FilteringSelect如何动态加载option

一页扁舟 2009-01-21 05:06:57
如题。下面的更新按钮事件中动态加载上<option value="2" >2</option>就可以了。
不要创建新文件做dataStore,谢谢。

<HTML>
<HEAD>
<TITLE>FilteringSelect Test</TITLE>
<STYLE type="text/css">
@import "/dojo/dijit/themes/tundra/tundra.css";
</STYLE>
<script type="text/javascript">
dojo.require("dijit.form.FilteringSelect");
dojo.require("dijit.form.Button");
dojo.addOnLoad(go);

function go(){
dojo.connect(dojo.byId("updateBtn"), "onclick", doUpdate);
}

function doUpdate() {
// add process here -:)
}
</script>
</HEAD>
<BODY class="tundra">
<select id="bizCd" name="bizCd" dojoType="dijit.form.FilteringSelect">
<option value="0" >0</option>
<option value="1" >1</option>
</select>
<button id="updateBtn" dojoType=dijit.form.Button >更新</button>
</BODY>
</HTML>
...全文
897 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
一页扁舟 2009-04-01
  • 打赏
  • 举报
回复
从日本网站上提问得到的回复:
ComboBox や FilteringSelect の内容は Data Store で定義されているので、Data Store を切り替えることによって、内容を動的に変更することができます。

以下のような JavaScript コードで複数の Data Store とそれらを切り替えるための関数を用意し、


dojo.require("dojo.data.ItemFileReadStore");

var dataStore1 = new dojo.data.ItemFileReadStore({data: {
label: "name",
items: [
{name: "A001", value: "001"},
{name: "A002", value: "002"}
]
}});
var dataStore2 = new dojo.data.ItemFileReadStore({data: {
label: "name",
items: [
{name: "B003", value: "003"},
{name: "B004", value: "004"}
]
}});

function changeItem2(){
var item1 = dijit.byId("item1");
var item2 = dijit.byId("item2");
if(item1.attr("value") == "0"){
item2.store = dataStore1;
item2.attr("displayedValue", "A001");
}else{
item2.store = dataStore2;
item2.attr("displayedValue", "B003");
}
};


HTML には、item2 の初期値の Data Store を store 属性で設定します。


<select id="item2" name="item2" dojoType="dijit.form.FilteringSelect" store="dataStore1">
</select>
一页扁舟 2009-01-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lihui_shine 的回复:]
JScript codevar sObj = document.getElementById("bizCd");
sObj.add(new Option("2","2"));
[/Quote]
dojo1.1.1版本在HTML文件加载之后,就不能识别select项目了。所以new option不好用。
浪尖赏花 2009-01-21
  • 打赏
  • 举报
回复
var sObj = document.getElementById("bizCd");
sObj.add(new Option("2","2"));
一页扁舟 2009-01-21
  • 打赏
  • 举报
回复
dojo版本是1.1.1

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧