2

我一直在到处寻找,但我找不到我的问题的答案,也许有人可以帮助我。

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

但是如果我改为:按钮,组件,按钮并在组件中我写一个html:''

焦点管理器(也许是别的东西......)开始......好吧......这个文本输入不太好,我可以写......但我不能按退格键,如果我这样做,什么也不会发生,也我可以按箭头键....

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

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

我已将问题缩小到工具栏...我在其他地方创建了一个文本输入,并且所有键都工作...我在工具栏中移动了相同的输入(使用 jquery)...以及退格键和箭头钥匙停止工作......如果我把它移开,钥匙又开始工作了:S

我需要它是一个文本输入,因为我打算使用一个 jQuery 插件来隐藏当前输入并用另一个输入替换它......所以你看......即使我使用文本字段,文本字段也会被隐藏并且文本输入将在没有退格键和箭头键功能的情况下替换它

任何帮助将不胜感激

问候!!!!!!!!

4

1 回答 1

1

好的....

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

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

所以我猜 FocusManager 有事可做......

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

我将组件保留为文本字段

        {
            xtype: 'textfield',
            name: 'emailsi',
            id: 'emailsi',
            labelStyle: 'width: auto',
            labelWidth: 120,
            width: 500,
            fieldLabel: idioma.personasInvolucradas
        }

当通过 jquery 创建文本输入时,它适用display: none于前一个文本字段所以......我恢复display:block并应用 aposition: absolute; float: right; z-index: -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();
                });

基本上,我发现只要原始文本字段有焦点,我就可以在文本输入中按退格键:)(还有我应用 css 的地方,首先它在焦点事件之外,但是当工具栏被重新绘制时,文本字段返回显示:无)

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

问候!!

于 2011-06-25T21:00:40.050 回答