作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有两个组合框的表单
。一个是正常的,另一个是 dijit.form.Combobox
。
<select id="mySel"></select>
<select dojotype="dijit.form.ComboBox" id="dsel"/>
我可以使用以下脚本将项目添加到普通项目。
var opt = mySel.appendChild(document.createElement('option'));
opt.text = "My sample text"
但在 dijit combo
中却不起作用。如何做到这一点?
最佳答案
问题是 Dojo 将 DOM 节点(<select>
)解析为完全不同的东西。 Dojo 在内部使用商店来保存组合框的选项。
要向组合框添加选项,您需要访问组合框的存储区并向其中添加新项目。您可以在 ComboBox 的 Dojo API 中阅读更多相关信息。或 Store API .
在商店 API 中,您会注意到一个名为 add()
的函数.如果您使用该功能,则可以向商店添加新商品。代码将类似于:
registry.byId("dsel").get('store').add({ name: "Test", id: 1 });
或者可以找到完整的 JSFiddle here
关于javascript - 如何将项目添加到 dojo 中的组合框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17061083/
我是一名优秀的程序员,十分优秀!