整理以前做的东西,这个合并单元格的问题再新浪博客也写过了。。。。。

下面这段代码是列表数据

//载入排放系数管理报表数据
        function LoadEmissionReportData() {
            //获取计算ID
            var CountID = getUrlParam("CountID");
            $.ajax({
                type: "POST",
                url: "../Ashx/GetGasInventoryListInfo.ashx?type=getParamReport",
                data: { "CountID": "" + CountID + "" },
                datatype: "text",
                cache: false,
                success: function (data) {
                    if (data != "") {
                        var jdata = $.parseJSON(data);
                        $("#paramTable").datagrid({
                            idField: "id",      //标识字段,主键
                            pagination: false,   //是否开启分页
                            rownumbers: true,   //行号
                            singleSelect: true, //是否开启单选还是多选
                            rownumbers: true,
                            pageSize: ,
                            pageNumber: ,
                            title: "排放系数管理表",
                            width: ",
                            columns: [[
                        { field: , rowspan: , align: 'center' },
                        { field: , rowspan: , align: 'center' },
                        { field: , rowspan: , align: 'center' },
                        { field: , rowspan: , align: 'center' },
                        { title:  },
                        { field: , rowspan: , align: 'center' }
                    ],
                    [
                    { field: , align: 'center' },
                        { field: , align: 'center' },
                        { field: , align: 'center' },
                        { field: , align: 'center' },
                        { field: , align: 'center' }
                    ]
                    ],
                            data: jdata
                        });
                    }
                    else {
                        AlertMsg(");//这是我们自己写的弹框js
                    }
                },
                error: function () {
                    AlertMsg(");
                }
            });
            $("#paramTable").datagrid({
                onLoadSuccess: function (data) {
                    ) {
                        //调用mergeCellsByField()合并单元格
                        mergeCellsByField("paramTable", "ID,Ext1,SName,form");

                    }
                }
            });
        }

合并单元格的代码

 function mergeCellsByField(tableID, colList) {
            var ColArray = colList.split(","); //切割需要合并的列名
            var tTable = $("#" + tableID);
            var TableRowCnts = tTable.datagrid("getRows").length;//获取整个table的行数
            var tmpA;
            var tmpB;
            var PerTxt = "";//记录单元格的值
            var CurTxt = "";
            var alertStr = "";

            PerTxt = "";
            tmpA = ;//记录合并的行数
            tmpB = ;
            //当列名为ID时 记录合并的行索引 和合并的行数 其他列则跟着从相同索引值开始合并相同的行数
            //遍历表格
            ; i <= TableRowCnts; i++) {
                if (i == TableRowCnts) {
                //表格为空
                    CurTxt = "";
                }
                else {
                    CurTxt = tTable.datagrid("getRows")[i]["ID"];
                }
                if (PerTxt == CurTxt) {
                    tmpA += ;
                }
                else {
                    tmpB += tmpA;
                    ; j < ColArray.length; j++) {
                        tTable.datagrid("mergeCells", {
                            index: i - tmpA,
                            field: ColArray[j], //合并字段
                            rowspan: tmpA,
                            colspan: null
                        });
                    }
                    tmpA = ;
                }
                PerTxt = CurTxt;
            }
        };

效果图:

easyui datagrid 合并单元格的更多相关文章

  1. JS实现EasyUI ,Datagrid,合并单元格功能

    为了实现datagrid的合并单元格效果,datagrid的数据加载方式肯定是要写在JS文件内部的. 一:在JS内部添加Datagrid数据加载方法如下: $("#id").dat ...

  2. easyui datagrid单击单元格选择此列

    示例代码实现单击jquery easyui datagrid的单元格时,取消datagrid默认选中高亮此行的样式,改为选中单击的单元格所在的列,高亮此列上的所有单元格.可以配置全局single变量, ...

  3. 扩展jquery easyui datagrid编辑单元格

    扩展jquery easyui datagrid编辑单元格 1.随便聊聊 这段时间由于工作上的业务需求,对jquery easyui比较感兴趣,根据比较浅薄的js知识,对jquery easyui中的 ...

  4. Silverlight的DataGrid合并单元格

    现在也不知道还有没有同学做Silverlight开发了,我是一个Silverlight菜鸟,遇到问题也很难百度查到.就简单的记录一下这两天遇到的问题,并做了一个简单的小Demo,希望能够帮助到其他同学 ...

  5. WPF DataGrid 合并单元格

    在网上搜索wpf合并单元格,一直没搜索到,没办法,只能自己想办法搞定了.其实就是DataGrid套DataGrid,为了方便支持Column拖动,在合并的DataGridColumn那一列的Heade ...

  6. EasyUI DataGrid合并单元

    <table id="tt"></table> $('#tt').datagrid({     title:'Merge Cells',     iconC ...

  7. DataGrid合并单元格(wpf)

    在网上搜索wpf合并单元格,一直没搜索到,没办法,只能自己想办法搞定了.其实就是DataGrid套DataGrid,为了方便支持Column拖动,在合并的DataGridColumn那一列的Heade ...

  8. Easyui datagrid 扩展单元格textarea editor

    datagrid 扩展单元格textarea editor by:授客 QQ:1033553122 测试环境 jquery-easyui-1.5.3 问题描述 如下,在没有扩展的情况下,初始化如下 手 ...

  9. C# DataGrid合并单元格

    1.栏位枚举 private enum DataGridColumn { ROWNUM = , EMPID, EMPNAME, SEX, SALARY, ADRRESS, PHONE, TEL, PO ...

随机推荐

  1. Eclipse 常用快捷键

    Ctrl + Shift + L  : 可以查看快捷键方式 Ctrl + 1 : 快速修复 Ctrl + / : 注释当前行 Ctrl + D : 删除当前行 Shift + Enter : 可以在当 ...

  2. Ubuntu 使用Gparted工具扩大第一分区方法步骤

    Ubuntu 使用Gparted工具扩大第一分区方法步骤 环境:vmware9.01 .ubuntu12.04 需要的工具: 1.U盘,Universal-USB-Installer-1.9.6.4. ...

  3. CentOS 静态IP设置

    一.CentOS 修改IP地址修改对应网卡的IP地址的配置文件 # vi /etc/sysconfig/network-scripts/ifcfg-eth0   电信 # vi /etc/syscon ...

  4. Python3学习(二)-递归函数、高级特性、切片

    ##import sys ##sys.setrecursionlimit(1000) ###关键字参数(**关键字参数名) ###与可变参数不同的是,关键字参数可以在调用函数时,传入带有参数名的参数, ...

  5. xcode意外退出

    完全不明所以的频繁退出 第一种 排除SVN冲突 在团队开发中,SVN冲突是最常见的了,程序异常时查看SVN文件冲突基本上成了本能. 排除SVN冲突 首先,右键主项目文件即xcodeproj文件,显示包 ...

  6. AngularJS时间轴指令

    是基于ion.rangeSlider.js,主要代码如下: <link rel="stylesheet" type="text/css" href=&qu ...

  7. 再读C++线程池

    最近仔细看了一下https://github.com/henkel/threadpool代码,总体感觉非常精巧,使用了 boost库的bind function完成了线程池与业务端的完全解耦:所有的任 ...

  8. Android事件分发机制(下)

    这篇文章继续讨论Android事件分发机制,首先我们来探讨一下,什么是ViewGroup?它和普通的View有什么区别? 顾名思义,ViewGroup就是一组View的集合,它包含很多的子View和子 ...

  9. HTML <label> 标签

    定义:<label> 标签为 input 元素定义标注(标记). 用法: label 元素不会向用户呈现任何特殊效果.不过,它为鼠标用户改进了可用性.如果您在 label 元素内点击文本, ...

  10. JavaScript WEB页面调试

    不管我们开发什么项目,都需要使用调试.后端的调试比较简单.前端js调试稍微复杂了一点,但是也别怕,因为我们有很多调试前端js代码的浏览器工具.比如IE浏览器.firefox浏览器.chrome浏览器等 ...