Combobox Extjs组合框是否获取上一个值?

Combobox Extjs组合框是否获取上一个值?,combobox,extjs4,Combobox,Extjs4,尝试获取组合框的上一个值。我尝试了“改变”事件,但它不起作用如果我没有错的话,新的extjs 4.0不存在beforeselect。有什么办法可以做到这一点吗 我知道我们可以使用change事件,但只有当用户键入某些内容时才会发生这种情况。我想检查每个新选择是否有以前的值?奇怪的是,在选择之前没有事件。但是,combobox扩展了picker,每个picker都有一个带有beforeselect事件的selectionModel。因此,您可以在选择事件之前将处理程序分配给选择器selModel的

尝试获取组合框的上一个值。我尝试了“改变”事件,但它不起作用如果我没有错的话,新的extjs 4.0不存在beforeselect。有什么办法可以做到这一点吗


我知道我们可以使用change事件,但只有当用户键入某些内容时才会发生这种情况。我想检查每个新选择是否有以前的值?

奇怪的是,在选择之前没有
事件。但是,
combobox
扩展了
picker
,每个picker都有一个带有
beforeselect
事件的selectionModel。因此,您可以在选择
事件之前将处理程序分配给选择器selModel的

MyCombo.getPicker().getSelectionModel()
    .on('beforeselect',function(sm, selections, i) {
        console.log(sm.lastSelected, selections, i);
    });

您可以使用更改事件处理程序将此参数传递给侦听器
(combo、newValue、oldValue)

您还可以从beforeselect事件中combo对象的valueModels中获取combo的上一个值

beforeselect: function(combo, record, index, eOpts){
    me.prevCountry = combo.valueModels[0].data.COUNTRY_ID;
}