Extjs Ext.ComboBox对现有内容进行自动调整大小

Hog*_*eed 2 javascript extjs

在现有的html选择项上应用Ext.ComboBox时出现问题,即使现有内容使得html选择约20px(通过设置内容非静态宽度),Ext.ComboBox也会调整为某种默认值,大,宽度值.有一种方法可以根据现有项自动调整Ext.ComboBox的大小,而不使用默认宽度?

即使我知道Ext是哪个最好的工具,这个问题也会让我的同事丢弃Extjs.

提前致谢

Bri*_*kau 5

你不能在技术上使组合"自动宽度" - Ext实际上将其<select>转换为<input>幕后的常规,并且<input>元素必须具有指定的宽度/大小.但是,您可以根据现有的技巧来限制 Ext调整组合大小,<select>这应该会给您相同的最终结果.这是Ext 组合演示页面中的一个示例,其中我修改了宽度配置值:

var converted = new Ext.form.ComboBox({
    typeAhead: true,
    triggerAction: 'all',
    transform:'state',
    width: Ext.fly('state').getWidth(),
    forceSelection:true
});
Run Code Online (Sandbox Code Playgroud)

显而易见的警告是,如果您在渲染后随后修改了列表,则组合将不会自动调整大小,您必须找到自己调整大小的方法.