easyui datagrid行合并

easyui datagrid行合并

合并方法

/**
* EasyUI DataGrid根据字段动态合并单元格
* 参数 tableID 要合并table的id
* 参数 colList 要合并的列,用逗号分隔(例如:"name,department,office");
*/
function mergeCellsByField(tableID, colList) {
    var ColArray = colList.split(",");
    var tTable = $("#" + tableID);
    var TableRowCnts = tTable.datagrid("getRows").length;
    var tmpA;
    var tmpB;
    var PerTxt = "";
    var CurTxt = "";
    var alertStr = "";
    for (j = ColArray.length - 1; j >= 0; j--) {
        PerTxt = "";
        tmpA = 1;
        tmpB = 0;

        for (i = 0; i <= TableRowCnts; i++) {
            if (i == TableRowCnts) {
                CurTxt = "";
            }
            else {
                CurTxt = tTable.datagrid("getRows")[i][ColArray[j]];
            }
            if (PerTxt == CurTxt) {
                tmpA += 1;
            }
            else {
                tmpB += tmpA;
                tTable.datagrid("mergeCells", {
                    index: i - tmpA,
                    field: ColArray[j],  //合并字段
                    rowspan: tmpA,
                    colspan: null
                });
                tmpA = 1;
            }
            PerTxt = CurTxt;
        }
    }
}

调用方法

 //呈现列表数据
        $(‘#List‘).datagrid({ pagination: true,
            onLoadSuccess: function (data) {
                if (data.rows.length > 0){          //调用函数合并单元格,2000是延迟加载时间          setTimeout("mergeCellsByField(/"tbList/", /"No/")",2000);
                }
            }
        });
时间: 2024-10-06 00:39:21

easyui datagrid行合并的相关文章

JQuery EasyUI DataGrid动态合并单元格

/**        * EasyUI DataGrid根据字段动态合并单元格        * @param fldList 要合并table的id        * @param fldList 要合并的列,用逗号分隔(例如:"name,department,office");        */        function MergeCells(tableID, fldList) {            var Arr = fldList.split(",&quo

easyUi dataGrid 行高设置,解决错行问题

在easyUi dataGrid中,如果使用了frozenColumns和columns,如果行高不一样,可以选择其中的一个格式化一下高度即可. 代码 columns : [ [ { title : '备注', field : 'memo', width : 150, styler : function(value,row,index){ return 'height:30px'; } }] ] 原文地址:http://blog.51cto.com/1197822/2157015

easyUI datagrid的合并的js封装

$.extend($.fn.datagrid.methods, { autoMergeCells : function (jq, fields) { return jq.each(function () { var target = $(this); if (!fields) { fields = target.datagrid("getColumnFields"); } var rows = target.datagrid("getRows"); var i =

Easyui datagrid行内【添加】、【编辑】、【上移】、【下移】(转自http://www.cnblogs.com/sword-successful/p/3386861.html,感谢分享)

1.首先大概说下这几个功能里用到的主要方法,行内添加数据主要是添加列的editor属性, 行内编辑主要使用beginEdit(), endEdit(),同时一个关键就是拿到当前的操作行索引editIndex. 2.撤销用到了rejectChanges(). 3.保存时使用getRows()或者getChanges(). getChanges()主要是获取添加或编辑的数据,getRows()获取到本页所有数据,主要是配合[上移][下移]方法使用. 4.在做这个功能中我使用了一个序列化前台对象组件[

easyui datagrid行中点击a标签链接,行被选中,但是获取不到对应的参数

easyui中使用比较多的就是datagrid了,表格中添加连接,点击跳转,为比较常用的方式;往往在点及标签后调用getSeleted方法会失效; 一.初始代码: {field: 'id',title : '操作',align: 'center',width:'10%', formatter:function(value,row){ return  "<a onclick='show()' > 查看 </a>"; } }, function show(){ va

EasyUI datagrid 行编辑

一.HTML: <div class="info"> <div class="info_tt"> <span class="info_tt1">明细</span> <span class="pucker2"></span><a class="del" onclick="detailDel()" href=&qu

easyui datagrid 行编辑功能

1 /*单元编辑代码开始 */ 2 $.extend($.fn.datagrid.methods, { 3 editCell : function(jq, param) { 4 return jq.each(function() { 5 var opts = $(this).datagrid('options'); 6 var fields = $(this).datagrid('getColumnFields', true).concat( 7 $(this).datagrid('getCol

easyui datagrid 合并单元格

整理以前做的东西,这个合并单元格的问题再新浪博客也写过了..... 下面这段代码是列表数据 //载入排放系数管理报表数据 function LoadEmissionReportData() { //获取计算ID var CountID = getUrlParam("CountID"); $.ajax({ type: "POST", url: "../Ashx/GetGasInventoryListInfo.ashx?type=getParamReport&

[easyui][datagrid]EasyUI DataGrid根据字段动态合并单元格

1.合并方法 /** * EasyUI DataGrid根据字段动态合并单元格 * 参数 tableID 要合并table的id * 参数 colList 要合并的列,用逗号分隔(例如:"name,department,office"); */ function mergeCellsByField(tableID, colList) { var ColArray = colList.split(","); var tTable = $("#" +