Ext的FormPanel如何动态添加组件

danengnai__ 2008-10-14 03:44:27


如图,我点击“点击生成下一行”按钮后在4个文本框和上传文件之间添加4个组件

请问Ext能实现这种功能吗?
...全文
5024 20 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
Code_cj 2012-01-06
  • 打赏
  • 举报
回复
动态添加一个组件我已经实现了,但是动态删除就遇到了问题.....
zhangyongdingrui 2011-12-14
  • 打赏
  • 举报
回复
panel就是new的FormPanel对象。
程序猿之廉颇 2011-11-09
  • 打赏
  • 举报
回复
panel.doLayout();
panel就是new的FormPanel对象。
xiaoming74110 2011-10-19
  • 打赏
  • 举报
回复
我也遇见这个问题 我想知道
lalashi 2011-05-10
  • 打赏
  • 举报
回复
asdasdasdasad
疯小 2011-02-28
  • 打赏
  • 举报
回复
我现在也遇到动态添加的问题,楼主能不能加我QQ 指教一下 我的QQ:980529248
刘一说 2011-01-24
  • 打赏
  • 举报
回复
收藏一下!
kakajay008 2010-11-04
  • 打赏
  • 举报
回复
mark之
tom2143 2010-05-25
  • 打赏
  • 举报
回复
学习了
punk_yb 2010-03-15
  • 打赏
  • 举报
回复
DDDDDD
yanick007 2009-07-31
  • 打赏
  • 举报
回复
ddd
sy_binbin 2008-10-15
  • 打赏
  • 举报
回复
收藏一下!
danengnai__ 2008-10-15
  • 打赏
  • 举报
回复
4L正解 谢谢你
qianqian51267 2008-10-15
  • 打赏
  • 举报
回复
帮顶
danengnai__ 2008-10-15
  • 打赏
  • 举报
回复
我现在能把组件填到form里面,

为了测试,我点击另一个按钮也能取到新添加的组件

但是服务器却接收不到,只能接收到原有的那几个组件

希望大家帮忙
qintao1203 2008-10-14
  • 打赏
  • 举报
回复
var _panel = this.ownerCt;
这句,怎么没看到ownerCt
admes2009 2008-10-14
  • 打赏
  • 举报
回复
你的添加方法是对的 _panel.add(_textfield);其实已经添加进去了。需要_panel.doLayout()重新布局就能看到了
danengnai__ 2008-10-14
  • 打赏
  • 举报
回复


},{
columnWidth:0.25,
items:[{
columnWidth:0.25,
items:[{
xtype:'textfield',
maxLength:50,
width:150,
name:'Gzzk'
}]
}]
}]
},{
columnWidth:1,
layout:'column',
style:'padding-top:8px;padding-left:14',
layout:'form',
labelWidth:70,
items:[{
anchor: '45%',
allowBlank: true,
msgTarget: 'side',
xtype: 'fileuploadfield',
id: 'filepath',
name: 'filepath',
emptyText: '请选择一个文件',
fieldLabel: '<font size="2">上传文件</font>',
buttonCfg: {
text: '',
iconCls: 'upload-icon'
}
}]//itmes2 over
},{
columnWidth:1,
style:'padding-top:8px;padding-left:14',
items:[{
xtype:'button',
text:'点击生成下一行',
handler:function(){

var _panel = this.ownerCt;

var _textfield = new Ext.form.TextField({
width:150
});

_panel.add(_textfield);
}
}]
}
]//items1 over
,buttons:[
{
id:'btnOk',
text:'确 定',
handler:function()
{
Ext.MessageBox.show
(
{
msg: '正在保存,请稍等...',
progressText: 'Saving...',
width:300,
wait:true,
waitConfig: {interval:200},
icon:'download',
animEl: 'saving'
}
);
fp.form.submit
(
{
url:'../../MyAshx/Gcglb/add/gcglb_gcxxgl_sgjs.ashx?xmid='+xmid,
method:'post',
success:function(form,action)
{
var flag = action.result.success;
if (flag == true)
{
Ext.MessageBox.alert('恭喜','添加信息成功!');
Datas.reload();
newWin.destroy();
}
},
failure:function()
{
Ext.Msg.alert('错误','服务器出现错误请稍后再试!');
}
}
);
}
},{
text:'关 闭',
handler:function()
{
newWin.destroy();
}
}
]
}
);
newWin = new Ext.Window
(
{
layout:'fit',
resizeHandles:'n s',
resizable :true,
width:740,
closable:false,
height:400,
minWidth:740,
frame:true,
minHeight:400,
collapsible:false,
closeAction : 'hide',
autoScroll:true,
plain : false,
modal: 'true',
title : '添加技术人员动态信息',
items : fp
}
);
newWin.show();

}


danengnai__ 2008-10-14
  • 打赏
  • 举报
回复


function gcglb_gcxxgl_jsrydt_add(xmid)
{
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
var fp = new Ext.FormPanel
(
{
frame:true,
width:'99%',
waitMsgTarget : true,
border:true,
bodyStyle:'width:707',
layout:'column',
waitMsgTarget : true,
autoScroll:false,
fileUpload : true,
items:[
{
columnWidth:1,
layout:'column',
items:[
{
columnWidth:0.25
},{
columnWidth:0.55,
layout:'form',
labelWidth:128,
style:'padding-top:10px',
items:[
{
xtype:'textfield',
fieldLabel:'<font size="2">技术人员信息标题</font>',
width:150,
name:'Title'
}
]//items3 over
},{
columnWidth:0.2
}
]//items2 over
},{
columnWidth:1,
layout:'column',
items:[
{
columnWidth:0.75
},{
columnWidth:0.25,
layout:'form',
labelWidth:40,
style:'padding-top:10px',
items:[
{
xtype:'textfield',
fieldLabel:'<font size="2">编号</font>',
width:100,
name:'Bh'
}
]//items3 over
}
]//items2 over
},{
columnWidth:1,
style:'padding-top:10px',
layout:'column',
bodyStyle:'text-align:center',
items:[{
columnWidth:0.25,
html:"<font size='2'>技术类别</font>"
},{
columnWidth:0.25,
html:"<font size='2'>地 区</font>"
},{
columnWidth:0.25,
html:"<font size='2'>供求情况</font>"
},{
columnWidth:0.25,
html:"<font size='2'>基本工资水平</font>"
}]
},{
columnWidth:1,
style:'padding-top:3px',
layout:'column',
bodyStyle:'text-align:center',
items:[{
columnWidth:0.25,
items:[{
columnWidth:0.25,
items:[{
xtype:'textfield',
maxLength:50,
width:150,
name:'Jslb'
}]
}]
},{
columnWidth:0.25,
items:[{
columnWidth:0.25,
items:[{
xtype:'textfield',
maxLength:50,
width:150,
name:'Dq'
}]
}]
},{
columnWidth:0.25,
items:[{
columnWidth:0.25,
items:[{
xtype:'textfield',
maxLength:50,
width:150,
name:'Gqzk'
}]
}]

hj_amwsoq 2008-10-14
  • 打赏
  • 举报
回复
可以啊,

52,792

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧