Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Extjs 单击空格键时模拟输入键_Extjs_Combobox - Fatal编程技术网

Extjs 单击空格键时模拟输入键

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); } }

我想使用空格键选择和删除组合框项目。在现有的功能中,它是通过Enter键实现的。 我有下面的代码,它不工作,并且在sencha文件的深处给出了错误

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
            });
    }
}

谢谢你的回复,亚历山大。当我单击空格时,此代码第一次起作用,它正确地取消选择所选项目。之后,当我单击空格键时,它不会选择取消选择的项目,而是将光标移到前面的显示区域(此处的焦点移到显示列表区域,而不是正在选择的项目)