冻结列后,报表设置了插入删除行重新排序的代码,序号乱了,如何处理

image.pngvar $tds = $('.x-table td[col=0][idx=0]:visible:not([fmt="T"])');//获取第1列中可见的序号单元格(A列) var n = 0;$tds.each(function(i, e{ n = n + 1; var row = $(e).attr("row"); //获取行号 _g().setCellValue(00, row, n); //将当前编号重新设置 })

FineReport lvzh 发布于 2024-12-10 17:14
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
用户k6280494Lv6专家互助
发布于2024-12-11 08:50

冻结列后,如果报表设置了插入删除行重新排序的代码,可能会导致序号出现乱序的情况。为了解决这个问题,可以参考以下步骤:

  1. 修改 JavaScript 代码:确保在加载结束后重新编号的 JavaScript 代码正确。以下是一个示例代码:

    if(window.deleteflag==1 || window.appendflag==1) { // 如果是添加标记的,重新编号  
    var $tds = $('.x-table td[col=1]:visible:not(:empty)'); // 判断不为空  
    var n = 0;
    $tds.each(function(i, e) {
    if(i >= 2) { // 从第3行开始编号
    n = n + 1;
    $(e).text(n); // 将当前编号重新设置  
    }
    });
    window.deleteflag = 0; // 清除删除行标记  
    window.appendflag = 0; // 清除添加行标记  
    }
  2. 保存并预览:在修改完代码后,保存并预览填报效果,确保序号能够正确显示。

  3. 注意事项:确保在处理序号时,冻结的列不会影响到序号的重新编号逻辑。

通过以上步骤,可以有效解决冻结列后序号乱序的问题。如果需要更详细的示例或代码,可以参考相关文档中的内容。

  • lvzh lvzh(提问者) 插入多行后,再删除中间行,序号不能重新排序,我之前的代码也是有这样的问题
    2024-12-11 09:11 
  • 2关注人数
  • 41浏览人数
  • 最后回答于:2024-12-11 08:50
    请选择关闭问题的原因
    确定 取消
    返回顶部