1、指定列的行合并

* 效果图:

 

* 程序:

  1. function mergeGridColCells(grid,rowFildName)
  2. {
  3. var rows=grid.datagrid('getRows' );
  4. //alert(rows.length);
  5. //alert(rows[1][rowFildName]);
  6. var startIndex=0;
  7. var endIndex=0;
  8. if(rows.length< 1)
  9. {
  10. return;
  11. }
  12. $.each(rows, function(i,row){
  13. if(row[rowFildName]==rows[startIndex][rowFildName])
  14. {
  15. endIndex=i;
  16. }
  17. else
  18. {
  19. grid.datagrid( 'mergeCells',{
  20. index: startIndex,
  21. field: rowFildName,
  22. rowspan: endIndex -startIndex+1
  23. });
  24. startIndex=i;
  25. endIndex=i;
  26. }
  27. });
  28. grid.datagrid( 'mergeCells',{
  29. index: startIndex,
  30. field: rowFildName,
  31. rowspan: endIndex -startIndex+1
  32. });
  33. }
 
*参数说明

grid:        easyUI的datagrid对象
rowFildName: 和并列的field属性值
 
 
 
  1. 源代码如下:

    1. function mergeGridColCells(grid,refCols,rowFildNames)
    2. {
    3. var rows=grid.datagrid('getRows' );
    4. //alert(rows.length);
    5. //alert(rows[1][rowFildName]);
    6. var flag=false ;
    7. var startIndex=0;
    8. var endIndex=0;
    9. if(rows.length< 1)
    10. {
    11. return;
    12. }
    13. $.each(rows, function(i,row){
    14. $.each(refCols, function(j,refCol){
    15. if(row[refCol]!=rows[startIndex][refCol])
    16. {
    17. flag= false;
    18. return false ;
    19. }
    20. else
    21. {
    22. flag= true;
    23. }
    24. });
    25. //if(row[rowFildName]==rows[startIndex][rowFildName])
    26. if(flag)
    27. {
    28. endIndex=i;
    29. }
    30. else
    31. {
    32. $.each(rowFildNames, function(k,rowFildName){
    33. grid.datagrid( 'mergeCells',{
    34. index: startIndex,
    35. field: rowFildName,
    36. rowspan: endIndex -startIndex+1,
    37. colspan: null
    38. });
    39. });
    40. startIndex=i;
    41. endIndex=i;
    42. }
    43. });
    44. $.each(rowFildNames, function(k,rowFildName){
    45. grid.datagrid( 'mergeCells',{
    46. index: startIndex,
    47. field: rowFildName,
    48. rowspan: endIndex -startIndex+1,
    49. colspan: null
    50. });
    51. });
    52. }
  2. 参数说明
    grid:        easyUI的datagrid对象

    refCols        合并参考列数组,及这些列都相等则合并rowFildNames指定的列
    rowFildNames: 和并列的field属性值及要合并的列数组

  3.  
    示例:mergeGridColCells($('#serviceTypeTable'),['serviceTypeId','areaId'],['areaName']);

easyUI单元格合并自定义封装的更多相关文章

  1. asp.net使用控件datagrid实现表头单元格合并

    合并的要点: 1.datagid的单元格合并原理是table中tr,td的布局实现; 2.合并的时机实在其datagridcreate事件中实现; 3.认识一个对象TableCellCollectio ...

  2. SNF快速开发平台MVC-表格单元格合并组件

    1.   表格单元格合并组件 1.1.      效果展示 1.1.1.    页面展现表格合并单元格 图 4.1 1.1.2.    导出excel合并单元格 图 4.2 1.2.      调用说 ...

  3. excel技巧--单元格合并与拆分

    如果要将上图的地区列做成下图的合并单一列: 有如下做法: (以下图表格为例) 1.选择要排序的表格,点击“开始”-->排序和筛选-->自定义排序.在对话框选择“业务项目”进行排序: 2.选 ...

  4. JS:jquery插件表格单元格合并.

    公司需要用到单元格合并,于是动手封装了一个简单的jquery插件,封装的函数是直接写好转的,请多多提意见看代码是否有优化的地方..... 截图: 代码: /* * mergeTable 0.1 * C ...

  5. Qt实现表格控件-支持多级列表头、多级行表头、单元格合并、字体设置等

    目录 一.概述 二.效果展示 三.定制表头 1.重写数据源 2.重写QHeaderView 四.设置属性 五.相关文章 原文链接:Qt实现表格控件-支持多级列表头.多级行表头.单元格合并.字体设置等 ...

  6. ExtJS 4.2 Grid组件的单元格合并

    ExtJS 4.2 Grid组件本身并没有提供单元格合并功能,需要自己实现这个功能. 目录 1. 原理 2. 多列合并 3. 代码与在线演示 1. 原理 1.1 HTML代码分析 首先创建一个Grid ...

  7. NPOI 教程 - 2.1单元格合并

    来源:http://liyingchun343333.blog.163.com/blog/static/3579731620091018212990/ 合并单元格在制作表格时很有用,比如说表格的标题就 ...

  8. DataGridView单元格合并

    本文章转载:http://www.cnblogs.com/xiaofengfeng/p/3382094.html 图: 代码就是如此简单 文件下载:DataGridView单元格合并源码 也可以参考: ...

  9. devexpress实现单元格合并以及依据条件合并单元格

    1.devexpress实现单元格合并非常的简单,只要设置属性[AllowCellMerge=True]就可以了,实现效果如下图: 2.但是在具体要求中并非需要所有的相同单元格都合并,可能需要其他的条 ...

随机推荐

  1. 根据搜素的字符串改变label包含该字符串的文字

    http://www.2cto.com/kf/201504/391811.html NSString *text =@"人生若只如初见"; //判断字符串所在的位置,并不区分大小写 ...

  2. jquery 数组求差集,并集

    var alpha = [1, 2, 3, 4, 5, 6], beta = [4, 5, 6, 7, 8, 9]; $.arrayIntersect = function(a, b){ return ...

  3. Android 利用Service BroadcastReceiver实现小例子

    Activity: package com.example.test; import android.app.Activity; import android.content.Context; imp ...

  4. input type=file 标签禁止让用户手动输入

    常规的Web应用程序中涉及到文件上传的部分都不可避免地会使用到<input type="file"/>控件,在上传文件的时候通过点击“浏览”按钮,在弹出的文件选择对话框 ...

  5. Oracle中游标返回多条数据的情况

    DECLARE -- 定义类型. TYPE test_type IS TABLE OF test_main%ROWTYPE; test_data test_type; -- 定义游标. CURSOR ...

  6. 在centos中编译putty时提示找不到gtk库的解决办法

    明明已经安过gtk了, 后来在csdn上发现了前人的解决办法 yum install libgnomeui-devel 现在编译出来的putty就可以有图形界面了

  7. Inside TSQL Querying - Chapter 1. Logical Query Processing

    Logical Query Processing Phases Summary (8) SELECT (9) DISTINCT (11) <TOP_specification> <s ...

  8. 视频处理控件TVideoGrabber视频捕捉设设备相关问题

    选择一个视频捕捉设备 首先设置 VideoSource = vs_VideoCaptureDevice来选择一个视频捕捉设备作为一个视频源. 通过指定VideoDevice属性来选择当前的视频捕捉设备 ...

  9. windows cmd command line 命令

    Reference: 1. http://msdn.microsoft.com/en-us/library/ms977170.aspx(前面有一段VB看不懂没关系) 2. http://csserve ...

  10. nginx源码安装

    1,首先解决系统环境: 安装rpm包组{CentOS6 跟开发相关的包组:} a.  Development Tools #yum groupinstall "Development Too ...