[ExtJS5学习笔记]第二十节 Extjs5配合数组的push方法,动态创建并加载组件

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39226773

官方例子: http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Array-method-push

本文作者:sushengmiyan

------------------------------------------------------------------------------------------------------------------------------------

上一节看到了如何使用fieldset集合来管理组件,其中fieldset中的每一个组件都是在items中指定的,如下:


可以看到,items其实就是一个数组,可以看成是json格式样式的一个数组。既然这样,那么当我们定义好了这样的字符串样式之后,可以使用数组的push方法,将这些项,一个一个的加载进去,就可以动态的进行组件创建了。


先看一下效果,右边的fieldset是动态创建出来的,是通过array的push方法加载的:

代码如下:


Ext.define(
  'fieldsettest.view.form.BaseForm',
  {
     extend: 'Ext.form.Panel',
     alias: 'widget.baseform',
	 title: '带fieldSet的formpanel',
     frame: true,  
     bodyStyle: 'padding:5px 5px 0',
     items: [],

	 initComponent: function(){
		var me  = this;
		var obj = [{
			// Fieldset in Column 1 - collapsible via toggle button
			xtype:'fieldset',
			columnWidth: 0.5,
			title: 'Fieldset 1',
			collapsible: true,
			defaultType: 'textfield',
			defaults: {anchor: '100%'},
			layout: 'anchor',
			items: [{
				fieldLabel: 'First Name',
				name: 'first',
				allowBlank: false
			},{
				fieldLabel: 'Last Name',
				name: 'last',
				allowBlank: false
			}]
		},{
			// Fieldset in Column 1 - collapsible via toggle button
			xtype:'fieldset',
			columnWidth: 0.5,
			title: 'Fieldset 2',
			collapsible: true,
			defaultType: 'textfield',
			defaults: {anchor: '100%'},
			layout: 'anchor',
			items: [{
				fieldLabel: 'First Name',
				name: 'first',
				allowBlank: false
			},{
				fieldLabel: 'Last Name',
				name: 'last',
				allowBlank: false
			}]
		}];
				 
		Ext.each(obj, function(field, indext){
		  me.items.push(field);
		});	
	this.callParent(arguments);
	}
  }

);


  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值