easyui 扩展方法 以第一列为主分组合并重复单元格

来源:互联网 发布:淘宝与京东哪个更可靠 编辑:程序博客网 时间:2024/06/05 05:04
/**easyui 扩展方法*合并列相同的单元格,以第一列分组*tableId 表格id*colList 要合并的列,以,分隔 例如 "modelId,modelIsp,modelProvinceid"*/  var mergeCellsByField = function(tableID, colList) {      var cols = colList.split(",");      var table = $('#' + tableID);      var rows = table.datagrid("getRows").length;      var tempName = table.datagrid("getRows")[0][cols[0]];      var row = 1;      var rowNextCol = 1;     var tempNameNextCol = '';      debugger;      for (var i = 0; i < rows; i++) {          if (i == rows - 1) {              tempName = "";          } else {              tempName = table.datagrid("getRows")[i + 1][cols[0]]          }          var name = table.datagrid("getRows")[i][cols[0]];          if (name == tempName) {              row = row + 1;          } else {              table.datagrid('mergeCells', {                  index: i - row + 1,                  field: cols[0],                  rowspan: row,                  colspan: null              });             if (row != 1) {             for(var j = 1 ; j < cols.length ; j++){            for (var k = i - row + 1; k < i + 1; k++) {                       if (k == i) {                       tempNameNextCol = "";                       } else {                       tempNameNextCol = table.datagrid("getRows")[k + 1][cols[j]]                       }                       var nameNextCol = table.datagrid("getRows")[k][cols[j]];                       if (nameNextCol == tempNameNextCol) {                       rowNextCol = rowNextCol + 1;                       } else {                           table.datagrid('mergeCells', {                               index: k - rowNextCol + 1,                               field: cols[j],                               rowspan: rowNextCol,                               colspan: null                           });                           rowNextCol = 1;                       }                   }            }             }            row = 1;          }      }  }//调用方式$('#table').datagrid({onLoadSuccess: function (data) {if (data.rows.length > 0) {mergeCellsByField("table","modelId,modelIsp,modelProvinceid");}}});

0 0
原创粉丝点击