[b]我在一个js文件class_owner.js中,创建了一个FormPanel对象:[/b]
var owner = function() {
owner.superclass.constructor.call(this, {
xtype: 'fieldset',
title: '业主信息1',
layout: 'column',
items: [{
columnWidth: .3,
layout: 'form',
labelWidth: 55,
labelAlign: 'right',
defaults: {anchor:'98%'},
items: [{
xtype: 'textfield',
fieldLabel: '业主编号'
}, {
xtype: 'numberfield', //只能输入数字的文本框
allowNegative: false, //不能输入负数
allowDecimals: false, //不能输入小数
maxLength: 18, //最大长度18位
fieldLabel: '身份证号'
}, {
xtype: 'datefield', //时间文本框
format: 'Y-m-d',
value: new Date(), //默认显示当前日期
readOnly: true,
fieldLabel: '填写时间'
}]
}, {
columnWidth: .3,
layout: 'form',
defaultType: 'textfield',
labelWidth: 55,
labelAlign: 'right',
defaults: {anchor:'98%'},
items: [{
fieldLabel: '车牌号'
}, {
fieldLabel: '所属公司'
}, {
fieldLabel: '填写人'
}]
}, {
columnWidth: .4,
layout: 'form',
items: [{
xtype: 'textfield',
inputType: 'image' //显示为图片
}]
}]
});
};
Ext.extend(owner, Ext.form.FormPanel, {});
[b]当在另一个js文件owner_info.js中,将上面创建的对象添加到一个FormPanel对象中,作为其子组件:[/b]
var myowner = new owner();
alert(myowner.title);
var fp = new Ext.form.FormPanel({
renderTo: 'aaa',
title: '新建业主信息',
width: '100%',
height: 300,
frame: true,
layout: 'form',
items: [myowner]
});
[b]刷新相应的页面后,提示未知的运行时错误,请问如何解决呢?[/b]
[b]问题补充:[/b]
[b]我刚开始接触EXTJ,水平很烂,请多包涵
如果我把owner_info.js中的FormPanel对象换成Window对象,然后这个Window对象,加载myowner对象,作为其子组件,页面就能够正常显示,代码是:[/b]
var myowner = new owner();
alert(myowner.title);
var w = new Ext.Window({
renderTo: Ext.getBody(),
title: '新建业主信息',
width: '99%',
height: '100%',
autoHeight: true,
plain: true,
items: [{
layout: 'form',
frame: true,
items: [myowner, {}]
}]
});
w.show();
[b]请教这是为什么呢?[/b]
[b]问题补充:[/b]
解决了。
把这个FormPanel对象myowner放入一个Panel对象中,就可以做为其子组件,而不能放入FormPanel对象,做为子组件。
谢谢。