[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);
	}
  }

);
时间: 2024-12-22 06:01:08

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

[ExtJS5学习笔记]第二十一节 Extjs5中使用config配置给ext.widget或者create方法传递参数

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39252805 官方例子:http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext.Class-cfg-config 本文作者:sushengmiyan ----------------------------------------------------------------------------------------------

[ExtJS5学习笔记]第二十三节 Extjs5中表格gridpanel的列格式设置

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39665979 官方文档:http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext.grid.column.Date 本文作者:sushengmiyan ----------------------------------------------------------------------------------------------

[ExtJS学习笔记]第十节 Extjs5新增特性之ViewModel和DataBinding

本文地址:http://blog.csdn.net/sushengmiyan/article/details/38612721 本文作者:sushengmiyan -------------------------------------------------------------资源链接----------------------------------------------------------------------- 翻译来源:http://docs.sencha.com/ext

[ExtJS5学习笔记]第十七节 Extjs5的panel组件增加accodion成为折叠导航栏

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39102335 官方例子:http://dev.sencha.com/ext/5.0.1/examples/window/layout.html?theme=neptune 本文作者:sushengmiyan -----------------------------------------------------------------------------------------

[ExtJS5学习笔记]第二十四节 Extjs5中表格gridpanel或者表单数据后台传输remoteFilter设置

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39667533 官方文档:http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext.data.Store-method-getFilters 本文作者:sushengmiyan ----------------------------------------------------------------------------------

[ExtJS5学习笔记]第二十五节 利用window.open()函数实现ExtJS5的登陆页面跳转

本文地址:http://blog.csdn.net/sushengmiyan/article/details/40427543 mvvm方式实现登陆的博客:http://blog.csdn.net/sushengmiyan/article/details/38815923 本文作者:sushengmiyan -----------------------------------------------------------------------------------------------

[ExtJS5学习笔记]第二十九节 sencha ext js 5.1.0中动态更换皮肤主题

本文地址:http://blog.csdn.net/sushengmiyan/article/details/42016107 本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 为方便起见,使用sencha cmd创建一个工程,使用app buil

[EXTJS5学习笔记]第二十六节 在eclipse/myeclipse中使用sencha extjs的插件

本文地址:http://blog.csdn.net/sushengmiyan/article/details/40507383 插件下载: http://download.csdn.net/detail/sushengmiyan/8085851 本文作者:sushengmiyan -------------------------------------------------------------------------------------------------------------

[ExtJS5学习笔记]第二十八节 sencha ext js 5.1.0发布版本正式发布

本文地址:http://blog.csdn.net/sushengmiyan/article/details/41242993 本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 官方博客发布了这个新版本说明,英文文章请戳下面 http://www.