我正在制作一个带有组合框的 dojo 小部件。但出于某种原因,组合框的下拉列表始终位于我的 body 元素的 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>
最佳答案
您可以使用名为 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/
关于javascript - dojo 组合框弹出菜单宽度太大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20726538/