在组合框和文本字段之间动态切换extjs4

时间:2014-02-21 23:54:43

标签: extjs extjs4

我在网站上有一个复选框,还有一个组合框。选中该复选框后,我想将组合框更改为文本字段(当然可以保存任何选定的值并将其放在文本字段中)。当取消选中该复选框时,我想返回显示组合框(并且它是之前选择的值)。

知道如何在ExtJS4中实现这一点吗?

谢谢

3 个答案:

答案 0 :(得分:0)

嗯,你首先要在你的控制器中有一个监听器,它将在选中复选框时运行。在该函数中,您应该能够从组合框中提取值,将其存储在临时变量中,创建(或可能取消隐藏)文本字段,并将临时变量值放在那里。

然后为取消选中侦听器操作编写相反的内容

你在MVC工作吗?

希望有所帮助

答案 1 :(得分:0)

我们实施了类似的方法。

将一个组合框放入容器中并向其中添加一个文本字段。将侦听器添加到复选框,并在处理程序中使用combobox.hide()textfield.show()

答案 2 :(得分:0)

Ext.define('MyComboBox',{
    extend:'Ext.form.field.ComboBox',
    initComponent:function() {
        this.originalForceSelection = this.forceSelection;
        this.callParent(arguments);
        if(this.textFieldMode) this.setTextfieldMode(true);
    },
    function setTextfieldMode(bool)
    {
        if(bool) {
            this.forceSelection=false;
            this.setHideTrigger(true);
        } else {
            this.setHideTrigger(false);
            this.forceSelection=this.originalForceSelection;
        }
    }
});