日期:2014-05-16 浏览次数:20815 次
function addWin(){
var addNewsForm= new Ext.FormPanel({
defaultType : 'textfield',//表单默认类型
labelAlign : 'center',//位置
labelWidth : 75,
frame : true,
width : 400,
items : //元素
[
{fieldLabel : '编号',name:'id',allowBlank:false,blankText:'不能为空'},
{fieldLabel : '类别'},
{fieldLabel : '标题'},
{fieldLabel : '时间'},
new Ext.form.TextArea({//文本域
fieldLabel:'内容',
name:'newsContent',
width:300,
height:100
})
],
buttons:[
{text:'保存',id:'addNewsWindow'},
{text:'重置'}
]
});  
var win = new Ext.Window({
width:510,
height:400,
modal:true,
title:"添加用户",
items:addNewsForm
});
win.show();
}
------解决方案--------------------
function addWin(){
var addNewsForm= new Ext.FormPanel({
defaultType : 'textfield',//表单默认类型
labelAlign : 'center',//位置
labelWidth : 75,
frame : true,
width : 400,
items : //元素
[
{fieldLabel : '编号',name:'id',allowBlank:false,blankText:'不能为空'},
{fieldLabel : '类别'},
{fieldLabel : '标题'},
{fieldLabel : '时间'},
new Ext.form.TextArea({//文本域
fieldLabel:'内容',
name:'newsContent',
width:300,
height:100
})
],
buttons:[
{text:'保存',id:'addNewsWindow'},
{text:'重置'}
]
}); 
var win = new Ext.Window({
width:510,
height:400,
modal:true,
title:"添加用户",
items:addNewsForm
});
win.show(); 
}
让程序先创建panel,然后再将FormPanel添加到window中最后显示window
显示window的先后是有区别的,如果在window调用了显示后再添加panel是显示不出来的
因为这个时候所有的dom节的以及被创建了或渲染了,后添加的出现就不会再被创建或渲染
所以要放在show前面比较保险!