Extjs text带触发器的区域-如何通过将触发器添加到选项卡

Extjs text带触发器的区域-如何通过将触发器添加到选项卡,extjs,Extjs,不使用鼠标几乎可以完全编辑以下表单: 唯一不可访问的是TextArea字段的触发器 由于textareafield是可键入的,因此我想将textareafield选项卡的触发器设置为可键入。Tab是我认为在不妨碍一般打字能力的情况下唯一可以使用的东西 我该怎么做?我没有在中找到任何东西。答案不太完整,但太长,无法作为评论,可能会对您有所帮助。以下是一种可能的解决方案: 我已经通过使顶层元素成为一个按钮(默认情况下它是一个div),覆盖了触发器的renderTpl配置,并为其添加了一些样式 您可

不使用鼠标几乎可以完全编辑以下表单:

唯一不可访问的是TextArea字段的触发器

由于textareafield是可键入的,因此我想将textareafield选项卡的触发器设置为可键入。Tab是我认为在不妨碍一般打字能力的情况下唯一可以使用的东西


我该怎么做?我没有在

中找到任何东西。答案不太完整,但太长,无法作为评论,可能会对您有所帮助。以下是一种可能的解决方案:

我已经通过使顶层元素成为一个
按钮(默认情况下它是一个
div
),覆盖了触发器的
renderTpl
配置,并为其添加了一些样式

您可以使用将
div
设为可选项卡,但问题是当您在聚焦触发器上按enter键时,它将不会执行处理程序


在当前的方法中,唯一的问题是textarea的焦点样式变得混乱。当您在聚焦于触发器后按tab键时,文本区域仍将保持聚焦类。

您可以为其设置键盘快捷键,如下所示:

            xtype: 'textareafield',
            fieldLabel: 'Name',
            enableKeyEvents: true, //important
            listeners: {
                keydown: function (a,e){
                    if ((e.altKey)&&(e.keyCode==73)){ //in that case Alt+i , but you could use any other combination                            
                        a.getTriggers().book.el.dom.click();
                    }
                }  
            }

希望这有帮助

我喜欢这种方法。通过在
textareafield
上添加
isFocusing:function(e){return true;}
isbluring:function(e){return true;}
修复了您的问题。非常感谢。也谢谢你!好把戏。我想我们都学到了新东西。