extjs中添加10个tabpanel各并带一个panel怎么实现?

有一个tabpanel中add了10个tab,并且每个tab都都有一个个人信息formpanel,每个个人信息formpanel表单里面的模板都一样,可是数据都不一样。但... 有一个tabpanel中add了10个tab,并且每个tab都都有一个个人信息formpanel,每个个人信息formpanel表单里面的模板都一样,可是数据都不一样。但是我不想重复建10个formpanel要怎么实现?想调用同一个formpanel来展现不同的数据。 展开
 我来答
jack_wang0823
2017-05-27 · TA获得超过2957个赞
知道大有可为答主
回答量:4143
采纳率:87%
帮助的人:1450万
展开全部

自定义一个formpanel 扩展类, 用数组来存放 每个formpanel的数据

FormClass = Ext.extend(Ext.FormPanel,{
frame:true,
layout:'table', 
trackResetOnLoad : false,
layoutConfig: {columns:3},
defaults:{labelAlign:'right',labelWidth:90, frame:false,layout:'form'},

initComponent : function( val_arr) { 
    var that=this;
    this.fields_arr['id']=new Ext.form.TextField ({name:'id', fieldLabel: 'id',value:val_arr['id']  });
            this.fields_arr['name']=new Ext.form.TextField ({name:'name', fieldLabel: 'name',value:val_arr['name']  });
// formpanel 的元素和值都用数组包含  给不同的数组就展示不同的数据
    Ext.apply(this,{
        items:[ this.fields_arr['id'],this.fields_arr['name']]
    });
    FormClass.superclass.initComponent.call(this); 
},
}
//使用时

formpanel= new FormClass(new array('id':001,'name':'name1'))
formpanel2= new FormClass(new array('id':002,'name':'name2'))
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式