zoukankan      html  css  js  c++  java
  • sencha/extjs 动态创建grid表格

    //创建普通表格 id,父容器,标题,json数据字符串,列名(逗号分隔),json数据key即store的fields属性(逗号分隔)


    function createCommonTable(id, container, fieldLabel, value, columns,dataIndexs) {
        	if(typeof(container)!="object")
    		{
    			container=Ext.getCmp(container); //根据id取组件
    		}
        
        var rarr = columns.split(',');
        var darr=dataIndexs.split(',');
           
        var columnsArr = new Array();
        var fieldsArr = new Array();
    
        for (var i = 0; i < rarr.length; i++) {
            columnsArr.push({tooltip:rarr[i] ,text: rarr[i], dataIndex: darr[i], editor: { xtype: 'textfield', allowBlank: true} });
        }
        for (var i = 0; i < darr.length; i++) {
            fieldsArr.push(darr[i]);
        }
      
        
        var fd = Ext.create('Ext.grid.Panel', {
            xtype: 'gridpanel',
            autoScroll:true,
            id: id,       
            columns: columnsArr , 
    		forceFit:true
        });
        if(fieldLabel)
            {
                fd. title=fieldLabel;//标题
            }
        else
            {
                fd.header=false;
            }
    	
    	
    	if (value) {
            value = eval(value);
        }
    
        var jsonData = { 'items': value };
    
        Ext.create('Ext.data.Store', {
            storeId: 'simpsonsStore-' + id,
            fields: fieldsArr,
            /*data:jsonData,*/
            proxy: {
                type: 'memory',
                reader: {
                    type: 'json',
                    root: 'items'
                }
            }
        });
    
        //console.log(jsonData);
        
        var store = Ext.data.StoreManager.lookup('simpsonsStore-' + id);
        fd.reconfigure(store);
        store.loadRawData(jsonData);	
    	
    	container.items.add(container.items.getCount(), fd);
    	container.doLayout();
    	return fd;
    }
    




    使用:

    var grid=createCommonTable('mygrid',Ext.getCmp("gridContainer"), null, [{"姓名":"aabb","年龄":21}], "姓名,年龄");


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    innodb存储引擎监控
    Oracle 11g DATAGUARD 同步延时监控脚本
    查看表空间的增长情况
    linux上下键,rlwrap来解决
    命令模式彻底删除oracle实例
    oracle 11g 静默安装
    oracle表空间相关统计查询
    11gr2 alert日志中报TNS-12535 TNS-00505原因及解决方法
    ORACLE EXPIRED(GRACE)
    清理监听日志处理的方法
  • 原文地址:https://www.cnblogs.com/xuejianxiyang/p/sencha_extjs_dynamic_create_gridpanel.html
Copyright © 2011-2022 走看看