我已经定义了一个这样的窗口:
Ext.define(), { 'MyApp.view.MyCustomWindow'
extends: 'Ext.window.Window',
alias: 'widget.mywindow',
...
items: [{
xtype: 'form',
items: [{
xtype: 'fieldset',
...
items: [{
xtype: 'combobox',
...
itemId: 'comboFilter'
}]
}]
}],
dockedItems: [{
xtype: 'toolbar',
items:[{
xtype: 'button',
itemId: 'okBtn'
}]
}]
}
然后我想从我的控制器中获取组件:
init: function(application) {
var me = this;
this.control({
"mywindow combobox#comboFilter": {
keypress: me.onClickCombo // removed <'>, still not working
},
"mywindow button#okBtn": {
click: me.onButtonOk // works!!!
}
});
}
但onClickCombo
永远不会被召唤。 mywindow combobox#comboFilter
有什么问题?
编辑:添加了一个有效的“确定按钮”!看看我上面代码的编辑。
答案 0 :(得分:1)
您的选择器不是问题。
如果您希望触发enableKeyEvents: true
事件,请将keypress
添加到您的组合框中。
请参阅keypress
事件文档:
仅当
enableKeyEvents
设置为true时才会触发此事件。
答案 1 :(得分:-1)
试试这个。
"mywindow combobox#comboFilter": {
keypress: me.onClickCombo // without <'>
}
如果不是解决方案,请更改:
"mywindow combobox[itemId=comboFilter]":{
keypress: me.onClickCombo // without <'>
}
<强>更新强>:
将此配置添加到组件。
Sencha api - Combobox Events
Keypress input field event. This event only fires if enableKeyEvents is set to true.