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