0

我正在使用 dojo1.7 和 ComboBoxes,但在设置默认值时遇到问题。我注意到设置值正常工作(当然应该:-)....

<div data-dojo-type="dojo.store.Memory" data-dojo-id="stateStore" data-dojo-props="data: [{id: 'y', name: 'yes'}, {id: 'n', name: 'no'}]"></div>

<input data-dojo-type="dijit.form.ComboBox" data-dojo-props="store:stateStore, searchAttr:'name'" value="yes" name="state" id="stateInput">

我注意到,当您取出 value="yes" 属性时,ComboBox 不再具有来自商店的默认选定值。

有什么方法可以将默认值设置为商店中的第一个值?我问这个的原因是因为我计划使用大量动态生成的 JSON 数据并且能够“默认为第一个值”将是非常有益的。

珍妮

4

1 回答 1

2

我不确定如何以声明方式执行此操作,但是:

  • 编写html的代码,你能不能让它写出第一个元素的值?
  • 以编程方式,您将从商店中获取所有商品,然后选择第一个(在 onComplete(items) 中,并将值设置为您的 items[0].name 或类似的东西......

如果您可以使用编程技巧,它可能会允许更细粒度的操作。

于 2012-07-04T07:10:14.160 回答