帆软js实现复制前一行

image.png

function copyRowData(row){

    for(var i = 1; i<=17; i++){

        var oldValue = _g().getCellValue(0, i, row-1);

        _g().setCellValue(0, i, row, oldValue);

    }

}

var id = $("td[id^=A]:last").attr("id");

//获取A列最后一行的单元格编号

var row = parseInt($("td[id^=A]:last").attr("row"));

if(row<=1){

FR.Msg.confirm("警告","没有数据可以复制!","");

return;

}

//是否有数据

var hasData = false;

for(var i = 1; i<17; i++){

    var data = _g().getCellValue(0, i, row);

    if(data){

        hasData = true;

        break;

    }

}

if (hasData) {

    FR.Msg.confirm("警告", "最后一行数据将会被覆盖?", function (value) {

        if(value){

                copyRowData(row);

        }

    })

}else{

    copyRowData(row);

}

怎么实现复制前一行时,不复制中间几列

FineReport yzm136176 发布于 2023-9-4 11:12
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-9-4 11:18

function copyRowData(row){

    for(var i = 1; i<=17; i++){

        var oldValue = _g().getCellValue(0, i, row-1);

        _g().setCellValue(0, i, row, oldValue);

    }

}

比如这样

function copyRowData(row){

    for(var i = 1; i<=17; i++){

        if(i<=10||i>=15){

        var oldValue = _g().getCellValue(0, i, row-1);

        _g().setCellValue(0, i, row, oldValue);

    }

    }

}

最佳回答
0
孤陌Lv6资深互助
发布于2023-9-4 11:21

那你单元格插入行策略 选择原值就可以了啊 就会把上一行填写的值 复制下来

  • 2关注人数
  • 188浏览人数
  • 最后回答于:2023-9-4 11:21
    请选择关闭问题的原因
    确定 取消
    返回顶部