使用控制器中的refs更改extjs4.1中未触发的事件

时间:2013-04-15 09:04:11

标签: extjs extjs4.1

在控制器中使用refs在extjs4.1中没有触发更改事件。我已经实现了以下代码。我使用了组合框id cmbMarketRegion。

任何人都可以纠正我吗?如果有任何遗漏,请告诉我。

这是我的View组合框

{
    xtype:'combo',
    id:'cmbMarketRegion',
    minWidth:50,
    minHeight:30,
    displayField:'marketRegionName',
    valueField:'marketRegionId'                                                 
}   

在控制器中

{
        ref: '#cmbMarketRegion',
}

  ], 

   init: function() {
    this.control({
        'cmbMarketRegion': {
            change: 'valueChange'
        }
    });

    }, 


valueChange:function(combo, ewVal, oldVal,optionsVal) {
    alert("hai");
}

由于

1 个答案:

答案 0 :(得分:1)

您正在搜索xtype'cmbMarketRegion',而非id。 尝试这样的事情:

this.control({
    'combo[id="cmbMarketRegion"]': {
        change: this.valueChange,
        scope: this
    }
});

或者,因为id是唯一的:

this.control({
    '[id="cmbMarketRegion"]': {
        change: this.valueChange,
        scope: this
    }
});

尝试不使用id属性,它是全局的。