如图,我想按分组二求和做出第一张图的效果,但是我只能做出图二

1642834611(1).png1642834676(1).png

FineReport 123木头人1 发布于 2022-1-22 14:58
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
zsh331Lv8专家互助
发布于2022-7-8 17:06

TTTTT.cpt.zip

————————————————————————

image.png

最佳回答
0
LTC朝Lv6高级互助
发布于2022-1-22 15:47

F列左父格设置为B列

最佳回答
0
墨残烛Lv5初级互助
发布于2022-1-22 16:12

可以是可以,就是有点麻烦

$(".x-table tr").eq(row).find("td").eq(column).attr("rowspan","2");//row是行,column是列,需要具体算出来

上述代码表示从当前行开始往下合并两行数据

$(".x-table tr").eq((row+1)).find("td").eq(column).remove();//删除当前行的下一行同一列的数据,因为合并行时,该列数据整体往后挪一格,需要将该元素集合删除

实现思路:在加载结束事件中循环嵌套,每次先获取rowspan的值,若为未定义,则表示没有合并,否则就先获取当前列的下一行,判断与当前行是否相同,不同则跳出循环,相同就先计数一次,并继续获取当前列的再下一行数据,直到找到与当前行当前列数据不一致或到最后一行为止,而后根据计数,从当前行开始向下合并,并将当前列的当前行之后的计数范围内的元素全部删除,(此时后面的数据行号不变,列号会整体往前挪一列,需要做个标记)

用上述的操作最终就能实现你要的效果,但是感觉太麻烦了

  • 123木头人1 123木头人1(提问者) 只有这一种办法了吗
    2022-01-22 16:16 
  • 墨残烛 墨残烛 回复 123木头人1(提问者) 如图二里面的第二列的那个2,你用正常的分组也无法实现,只能这样才行
    2022-01-22 16:48 
  • 4关注人数
  • 403浏览人数
  • 最后回答于:2022-7-8 17:06
    请选择关闭问题的原因
    确定 取消
    返回顶部