【发布时间】:2011-01-14 00:45:01
【问题描述】:
我有一个 dijit.form.Select 小部件。如果这很重要,它与数据存储相关联。它已经充满了几个选项。我想做的就是以编程方式设置它的值。我可以使用myWidget.attr('value') 获得它的值,但是如果我尝试做myWidget.attr('value', 5) 例如(其中 5 是有效值之一),它所做的只是重置小部件以选择第一个选项,无论我是什么值给它。
这似乎是一个错误,并且没有任何测试或文档显示如何完成我想要的。但是有什么办法,即使是肮脏的黑客攻击?
我正在使用 Dojo 1.4.0。请注意,dijit.form.Select 是 dojox.form.DropDownSelect 的新名称。
编辑:我什至尝试使用所有新选项重置小部件,但它忽略了具有selected = true 的选项,而只选择了第一个选项。不过还是有办法的。
【问题讨论】:
-
这里有一个测试页面:bit.ly/9qitSk,你可以乱用。使用 fire-bug 我在该页面上成功使用了 dijit.byId('s9').attr('value', 'CO') 。这将在该页面上设置“基于商店的”选择。
-
@Joe B 非常感谢 - 我以前见过,但没有看到值设置示例。我曾尝试在 firebug 中使用自己的 Select 小部件执行此操作,但没有成功,所以我想知道有什么不同...
-
顺便说一句,作为答案,我会支持你。
标签: javascript dojo