ext动态表头,及表头的分组

  

一,自定义的表头,默认表头使用

var groupTmp = [{header: '', colspan: 4, align: 'center' },{
        header : '加班日期及加班时长(单位:小时)',
        menuDisabled:true,
        colspan :30,
        align : 'center'
    },{header:'',colspan:3,align:'center'}];
    var group =   new Ext.ux.plugins.GroupHeaderGrid({
        //rows : [group1,group2]
        rows : [groupTmp]
    });
二,自定义列

  //列数组

  var colMArray1 = new Array();
    var colMArray2=new Array();
    colMArray2 = [{
        header : '地区', // 列标题
        dataIndex : 'wm_name',
        width:100,
         align : 'center'
       
    },{
        header : '姓名', // 列标题
        dataIndex : 'gsw_first_name',
        mcol:2,
        width:100,
         align : 'center'
    },{
        header : '员工编号', // 列标题
        dataIndex : 'gsw_employee_id',
        width:100,
         align : 'center'
    }];

    var colMArray5 = new Array();
     colMArray5 = [ {
        header : '离司日期', // 列标题
        dataIndex : 'wm_leave_date' 
    }];
    var colMArray6 = new Array();
     colMArray6 = [   {
        header : '1', // 列标题
        dataIndex : '1'
    }, {
        header : '2', // 列标题
        dataIndex : '2'
    },{
        header : '3', // 列标题
        dataIndex : '3'
    },{
        header : '4', // 列标题
        dataIndex : '4'
    },{
        header : '5', // 列标题
        dataIndex : '5'
    },{
        header : '6', // 列标题
        dataIndex : '6'
    },{
        header : '7', // 列标题
        dataIndex : '7'
    },{
        header : '8', // 列标题
        dataIndex : '8'
    },{
        header : '9', // 列标题
        dataIndex : '9'
    },{
        header : '10', // 列标题
        dataIndex : '10'
    },{
        header : '11', // 列标题
        dataIndex : '11'
    },{
        header : '12', // 列标题
        dataIndex : '12'
    },{
        header : '13', // 列标题
        dataIndex : '13'
    },{
        header : '14', // 列标题
        dataIndex : '14'
    },{
        header : '15', // 列标题
        dataIndex : '15'
    },{
        header : '16', // 列标题
        dataIndex : '16'
    },{
        header : '17', // 列标题
        dataIndex : '17'
    },{
        header : '18', // 列标题
        dataIndex : '18'
    },{
        header : '19', // 列标题
        dataIndex : '19'
    },{
        header : '20', // 列标题
        dataIndex : '20'
    },{
        header : '21', // 列标题
        dataIndex : '21'
    },{
        header : '22', // 列标题
        dataIndex : '22'
    },{
        header : '23', // 列标题
        dataIndex : '23'
    },{
        header : '24', // 列标题
        dataIndex : '24'
    },{
        header : '25', // 列标题
        dataIndex : '25'
    },{
        header : '26', // 列标题
        dataIndex : '26'
    },{
        header : '27', // 列标题
        dataIndex : '27'
    },{
        header : '28', // 列标题
        dataIndex : '28'
    },{
        header : '29', // 列标题
        dataIndex : '29'
    },{
        header : '30', // 列标题
        dataIndex : '30'
    }];
     var colMArray7 = new Array();
     colMArray7 = [{
         header : '日常', // 列标题
         dataIndex : 'jiabanType0'
     }, {
         header : '双休 ', // 列标题
         dataIndex : 'jiabanType1'
     }, {
         header : '节假 ', // 列标题
         dataIndex : 'jiabanType2'
     }];
  

    colMArray1 = colMArray1.concat(colMArray2);
    colMArray1 = colMArray1.concat(colMArray5);
    colMArray1 = colMArray1.concat(colMArray6);
    colMArray1 = colMArray1.concat(colMArray7);

    // 定义列模型
    var cm = new Ext.grid.ColumnModel({
                defaults : {
                    sortable : true,
                    menuDisabled:true,
                    align : 'center'
                },
                 columns:colMArray1,
                 rows:[groupTmp]
    });
   三,表格实例,

// 表格实例
    var grid = new Ext.grid.GridPanel({
        region : 'center', // 和VIEWPORT布局模型对应,充当center区域布局
        margins : '3 3 3 3',
        // collapsible : true,
        border : false,
        // 表格面板标题,默认为粗体,我不喜欢粗体,这里设置样式将其格式为正常字体
        title : '<span class="commoncss"></span>',
        // height : 500,
        autoScroll : true,
        frame : true,
        store : store, // 数据存储
        stripeRows : true, // 斑马线
        cm : cm, // 列模型
        bbar : bbar,// 分页工具栏
        // plugins : [ summary ], // 合计
        plugins :  [new Ext.ux.plugins.GroupHeaderGrid()] , // 分组
        //bodyStyle : "width:100%",
        viewConfig : {
            //scrollOffset : 0,// 表示表格右侧为滚动条预留的宽度
            // 不产横向生滚动条, 各列自动扩展自动压缩, 适用于列数比较少的情况
            //forceFit : true
        },
        loadMask : {
            msg : '正在加载表格数据,请稍等...'
        }
    });

 五,当事件触发,如点击按钮时,需重新变表头

  function setFomatForm(){
        var params = qForm.getForm().getValues();
        var tValue =params['starttime'];
        var arr=tValue.split("-");
        var countDay=dayNumOfMonth(arr[0],arr[1]);
        var colMArray11=new Array();
        for(var i=1;i<=countDay;i++){
            colMArray11.push({header : i, dataIndex:i, align : 'center'});
        }
        var cols=new Array();
        cols=cols.concat(colMArray2);
        cols=cols.concat(colMArray5);
        cols=cols.concat(colMArray11);
        cols=cols.concat(colMArray7);
        var rows_h=[{header: '', colspan: 4, align: 'center' },{
            header : '加班日期及加班时长(单位:小时)',
            menuDisabled:true,
            colspan :colMArray11.length,
            align : 'center'
        },{header:'',colspan:3,align:'center'}];
        grid.reconfigure(store,new Ext.grid.ColumnModel({
            columns:cols,
            rows:[rows_h]
        }));
    }

  完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值