我正在使用组合框制作一个dojo小部件。但由于某些原因,组合框的下拉总是占我身体元素的100%。
这是我的HTML:
<div style="width: 30%;">
<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="hasDownArrow:false, store:stateStore, searchAttr:'name'"
name="state" />
</div>
答案 0 :(得分:2)
您可以使用名为forceWidth
的属性强制下拉列表的宽度与文本框本身的宽度相同。要更改组合框的形式,您应该尝试使用style
属性。
可以在API Documentation找到相关信息。
对于你的例子,我会使用:
<input data-dojo-type="dijit/form/ComboBox" data-dojo-props="hasDownArrow:false, store:stateStore, searchAttr:'name', forceWidth: true, style: { width: '100%' }" name="state" />
我曾经测试过的JSFiddle:http://jsfiddle.net/g00glen00b/smF2C/