Ext一个很奇怪的问题。。。有请ext高人。。
时间:2011-01-05
来源:互联网
JScript code
_window = Ext.extend(Ext.Window,{ form: new MyFormPanel(),//MyFormPanel为自定义的FormPanel类 constructor: function(){ _window.superclass.constructor.call(this, { title: "测试窗体", items: this.form, buttons:[{ text: "测试回车", handler: this.onEnterClick, scope: this }] }); }, keys:{ key: 13, fn: function(){ alert(this.form);//这里提示为undefined,同样是this.form,为何onEnterClick有值,这里却为空呢? } }, onEnterClick: function(){ alert(this.form);//这里提示为对象[object Object] } });
简单的再说明下,form已作为一个属性的了,理论上说,this.form肯定是一个对象的了,但,奇怪的是,按回车时,this.form并不为一个对象,但点击测试回车按钮,要正常,怎么会这样呢?应该要么都有,要么都没有啊?有请Ext高人指教。
作者: xzy88 发布时间: 2011-01-05
key: 13,
fn: function(){
alert(this.form);//这里提示为undefined,同样是this.form,为何onEnterClick有值,这里却为空呢?
}
},
onEnterClick: function(){
alert(this.form);//这里提示为对象[object Object]
}
});
你自己看啊 这2个 事件的定义 那里一样了
作者: KK3K2005 发布时间: 2011-01-05
keys:{ key: 13, fn: function(){ alert(this.form);//这里提示为undefined,同样是this.form,为何onEnterClick有值,这里却为空呢? }, scope: this//加个作用域,上面的this指向的不是_window },
作者: IBM_hoojo 发布时间: 2011-01-05
keys:{
key: 13,
fn: function(){
alert(this.form);//这里提示为undefined,同样是this.form,为何onEnterClick有值,这里却为空呢?
}
},
onEnterClick: function(){
alert(this.form);//这里提示为对象[object Object]
……
不明白,事实定义一样不一样跟有没this.form什么关系?
那我想,按回车键时,跟点击回车测试按钮,都要得到this.form的值,怎么办?
总不能叫我在fn中,再赋值下啊。这样this.form=new MyFormPanel();???感觉很别扭这样。
作者: xzy88 发布时间: 2011-01-05
JScript code
keys:{
key: 13,
fn: function(){
alert(this.form);//这里提示为undefined,同样是this.form,为何onEnterClick有值,这里却为空呢?
},
scope: this//加个作用域,上面的this指向的不是……
加了,好像也没效果啊
作者: xzy88 发布时间: 2011-01-05
var _this=this;
_window.superclass.constructor.call(this, {
title: "测试窗体",
items: this.form,
buttons:[{
text: "测试回车",
handler: this.onEnterClick,
scope: this
}],
keys:{
key: 13,
fn: function(){
alert(_this.form);
}
});
},
初始化总拿到this了吧
// form: new MyFormPanel() 不过这里的定义方式不知道是不是你的本意
作者: KK3K2005 发布时间: 2011-01-05
引用 2 楼 ibm_hoojo 的回复:
JScript code
keys:{
key: 13,
fn: function(){
alert(this.form);//这里提示为undefined,同样是this.form,为何onEnterClick有值,这里却为空呢?
},
scope: this//加个作用域,上面的this指向的不是……
加了,好像也没效果啊
JScript code
scope: this//这个是画蛇添足吧,去掉试试
作者: p2227 发布时间: 2011-01-05
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28