Extjs - textarea进入事件

时间:2013-06-11 16:56:02

标签: extjs extjs4 textarea

我正在使用textarea而且我无法进入断线。

        xtype: 'textarea',
        name:'mt',
        fieldLabel: 'example',
        labelWidth: 100,
        width:100,
        labelAlign : 'right',
        maxLength: 100,
        value: 'example'

我正在使用上面的代码,它正在使用类型varchar(500 ..)工作并将数据存储到mysql中,但是当我将它重新加载到相同的表单(textarea)时,它没有运行。

             listeners: { 
                afterrender: function(){
                    var me = this;
                     me.el.swallowEvent(['keypress','keydown'    ]); 
                }
            }

第一个:我该如何解决这个问题?
第二种:我用下面的代码用(全部)形式输入事件,但我希望它不在我的textarea中听(因为输入断线),是否有可能以及如何做到这一点?感谢

 ,listeners: {
    render : function() {
        Ext.create('Ext.util.KeyNav', this.getEl(), {
            "enter" : function(e){  
                // do form
            }
            scope: this       
        });
    }
  }

更新第一个解决方案
我使用代码将数据从mysql重新加载到我的表单:)并且它运行良好

str_replace("\n", "\\n",$r[..])

我试着解决第二个问题。我的想法是检查textarea focus = true然后不运行(我的问题中的第3个代码),但我知道set focus是this.down('textarea')。focus(true,100);但我不知道如何检查有焦点?
更新第二个解决方案

enableKeyEvents: true,
listeners: { 
                afterrender: function(){
                    var me = this;
                     me.el.swallowEvent(['keypress','keydown'    ]); 
                }
            }

1 个答案:

答案 0 :(得分:1)

Checkout enableKeyEvents

如果为HTML输入字段启用代理键事件,则为true。 默认为:false

http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.form.field.TextArea-cfg-enableKeyEvents