我正在使用 textarea,但无法输入换行符。
xtype: 'textarea',
name:'mt',
fieldLabel: 'example',
labelWidth: 100,
width:100,
labelAlign : 'right',
maxLength: 100,
value: 'example'
我正在使用上面的代码,它正在工作并将数据存储到 mysql 类型为 varchar(500..),但是当我将它重新加载到相同的表单 (textarea) 时,它没有运行。
listeners: {
afterrender: function(){
var me = this;
me.el.swallowEvent(['keypress','keydown' ]);
}
}
第一个:我该如何解决?
第二个:我用下面的代码在(所有)表单中监听输入事件,但我希望它不在我的文本区域中监听(因为输入换行),是否有可能以及如何做到这一点?谢谢
,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 然后不运行(我的问题中的第三个代码)但我知道设置焦点是 this.down('textarea').focus(true,100); 但我不知道如何检查是否有焦点?
更新第二个解决方案
enableKeyEvents: true,
listeners: {
afterrender: function(){
var me = this;
me.el.swallowEvent(['keypress','keydown' ]);
}
}