Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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
ExtJS4:在工具栏中使用文本输入时出现问题(我想是focusmanager)_Extjs_Toolbar_Extjs4_Textinput_Focusmanager - Fatal编程技术网

ExtJS4:在工具栏中使用文本输入时出现问题(我想是focusmanager)

ExtJS4:在工具栏中使用文本输入时出现问题(我想是focusmanager),extjs,toolbar,extjs4,textinput,focusmanager,Extjs,Toolbar,Extjs4,Textinput,Focusmanager,我到处找了,但是我找不到我问题的答案,也许有人能帮我 我有一个带工具栏的面板 工具栏有3个项目(按钮、文本字段、按钮) 这工作很好,我可以按按钮,我不能写,编辑等在文本字段 但如果我换成:按钮,组件,按钮 在组件中,我编写了一个html:' 焦点经理(可能是其他什么…)开始。。。好。。不是很好的文字输入,我可以写。。。但是我不能按Backspace,如果我按了,什么也不会发生,也不能按箭头键 有没有办法只在文本输入中抑制焦点管理器???或者整个工具栏(我真的不需要它) 我尝试了“Ext.Focu

我到处找了,但是我找不到我问题的答案,也许有人能帮我

我有一个带工具栏的面板 工具栏有3个项目(按钮、文本字段、按钮) 这工作很好,我可以按按钮,我不能写,编辑等在文本字段

但如果我换成:按钮,组件,按钮 在组件中,我编写了一个html:'

焦点经理(可能是其他什么…)开始。。。好。。不是很好的文字输入,我可以写。。。但是我不能按Backspace,如果我按了,什么也不会发生,也不能按箭头键

有没有办法只在文本输入中抑制焦点管理器???或者整个工具栏(我真的不需要它)

我尝试了“Ext.FocusManager.disable()”,但不起作用(Ext.FocusManager.enabled也返回false…所以可能这不是焦点管理器的真正错误)

我已经把问题缩小到工具栏上了。。。 我在其他地方创建了一个文本输入,所有的键都可以工作。。。我在工具栏中移动了相同的输入(使用jquery)。。。退格键和箭头键停止工作。。。如果我将其移出,按键将重新开始工作:S

我需要它是一个文本输入,因为我计划使用一个jQuery插件来隐藏当前输入并用另一个输入替换它。。。所以你看。。。即使我使用textfield,textfield也会被隐藏,并且文本输入将替换它,而不使用退格键和箭头键功能

任何帮助都将不胜感激

问候

好的

使用xtype:“textfield”对我来说有些奇怪。。。。 Ext.FocusManager.enabled 返回false

如果我执行Ext.FocusManager.enable();然后是Ext.FocusManager.disable(); 甚至xtype:'textfield'也停止使用退格键和箭头键:O

所以我想FocusManager有点事要做

无论如何,我暂时解决了我的问题:p

我将组件保留为textfield

        {
            xtype: 'textfield',
            name: 'emailsi',
            id: 'emailsi',
            labelStyle: 'width: auto',
            labelWidth: 120,
            width: 500,
            fieldLabel: idioma.personasInvolucradas
        }
当通过jquery创建文本输入时,它会将
display:none
应用于上一个文本字段 所以我恢复
显示:块
,并应用
位置:绝对;浮动:对;z指数:-1这样它会再次隐藏,不会干扰布局:P

最后,要恢复退格键和左/右箭头键功能

我在jQuery中创建了一个
.focus()
事件,如下所示:

                $('.textboxlist-bit-editable-input').focus(function(){
                    $('#emailsi>div>input').css({display: 'block', 'z-index': '-2', position: 'absolute', float: 'right'});
                    Ext.getCmp('emailsi').focus();
                });
基本上,我发现只要原始文本字段有焦点,我就可以在文本输入中按backspace:)(还有我应用css的地方,首先它在焦点事件之外,但是当工具栏重新绘制时,文本字段返回显示:无)

如果有人有更好的解决方案,这将是非常受欢迎的:D


问候

我正在处理同一个问题,你有没有找到更好的解决方案?@limscorder那是我的解决方案。。。使用textfield组件,如果您使用默认组件,它们会正常工作,如果您需要一个简单的方法,则创建两者,然后隐藏extjs textfield组件,在input text focus事件中,将FOC返回给extjs textfield组件,如$('#myinput').focus(函数(){Ext.getCmp('mycomponent').focus();});