Extjs 单击空格键时模拟输入键
我想使用空格键选择和删除组合框项目。在现有的功能中,它是通过Enter键实现的。 我有下面的代码,它不工作,并且在sencha文件的深处给出了错误Extjs 单击空格键时模拟输入键,extjs,combobox,Extjs,Combobox,我想使用空格键选择和删除组合框项目。在现有的功能中,它是通过Enter键实现的。 我有下面的代码,它不工作,并且在sencha文件的深处给出了错误 keydown: function (me, e, eOpts) { me.keyPressed = e.getKey(); if (me.keyPressed == 32) { e.keyCode = Ext.EventObject.ENTER; this.fireEvent(e); } }
keydown: function (me, e, eOpts) {
me.keyPressed = e.getKey();
if (me.keyPressed == 32) {
e.keyCode = Ext.EventObject.ENTER;
this.fireEvent(e);
}
}
方法是修改选择器的KeyNavigation的键绑定
listeners:{
afterrender:function(combo) {
var picker = combo.getPicker(),
navModel = picker.getNavigationModel(),
map = navModel.keyNav.map,
existingBindings = Ext.Array.filter(map.bindings, function(binding) {
return binding.key === Ext.event.Event.SPACE;
};
map.removeBinding(existingBindings[0]);
map.addBinding({
key: Ext.event.Event.SPACE,
fn: navModel.onKeyEnter,
scope: navModel
});
}
}
谢谢你的回复,亚历山大。当我单击空格时,此代码第一次起作用,它正确地取消选择所选项目。之后,当我单击空格键时,它不会选择取消选择的项目,而是将光标移到前面的显示区域(此处的焦点移到显示列表区域,而不是正在选择的项目)