Spread for ASP.NET 表格控件:使用 JavaScript 实现单元格合并

最近有用户提出“实现合并相同内容连续单元格”的需求,例如:如果一列中的连续单元格拥有相同的值,即合并为一个单元格进行显示。本篇文章将阐述如何使用 Cell 客户端属性 rowSpan 和 colSpan 来实现这个功能。下面这个例子主要是通过循环某列中的所有行,按照相邻单元格的值进行分组。

发布于 2013/11/21 00:00

SpreadJS

最近有用户提出“实现合并相同内容连续单元格”的需求,例如:如果一列中的连续单元格拥有相同的值,即合并为一个单元格进行显示。本篇文章将阐述如何使用 Cell 客户端属性 rowSpancolSpan 来实现这个功能。

下面这个例子主要是通过循环某列中的所有行,按照相邻单元格的值进行分组。

  1: <script type="text/javascript">
  2:      function Button2_onclick()
  3:      {
  4:         var spread = document.getElementById("FpSpread1");
  5:         var rc = spread.GetTotalRowCount();
  6:         var r = 0;
  7:         while (r != rc - 1)
  8:         {
  9:             r1 = r;
 10:             var inc = 0;
 11:             while (r1 != -1)
 12:             {
 13:                var val1 = spread.GetValue(r1, 1);
 14:                var val2 = spread.GetValue(r1 + 1, 1);
 15:                if (val1 == val2)
 16:                {
 17:                   inc++;
 18:                   r1++;
 19:                }
 20:                else
 21:                {
 22:                   var cell = spread.GetCellByRowCol(r, 1);
 23:                   cell.rowSpan = inc + 1;
 24:                   r = r1 + 1;
 25:                   r1 = -1;
 26:                 }
 27:              }
 28:         }
 29:      alert('Cells with same values merged');
 30:   }
 31: </script>

 

效果图:

FOutput

Demo 下载

C# 示例: 点击下载

 

VB.NET 示例: 点击下载

SpreadJS | 下载试用

纯前端表格控件SpreadJS,兼容 450 种以上的 Excel 公式,具备“高性能、跨平台、与 Excel 高度兼容”的产品特性,备受华为、苏宁易购、天弘基金等行业龙头企业的青睐,并被中国软件行业协会认定为“中国优秀软件产品”。SpreadJS 可为用户提供类 Excel 的功能,满足表格文档协同编辑、 数据填报、 类 Excel 报表设计等业务场景需求,极大的降低企业研发成本和项目交付风险。

如下资源列表,可以为您评估产品提供帮助:

相关产品
推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

活字格低代码二维码

关注“活字格低代码”

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态