Derrick.Jiao 发表于 2020-11-30 12:09:36

获取删除行的所有数据

本帖最后由 DerrickJiao 于 2020-11-30 12:11 编辑

       有小伙伴在使用脏数据时,想获取删除行的所有数据,发现获取不到。其实,删除行并不符合脏数据的概念。通常,只有单元格值的变更才导致其成为脏数据。所以,利用脏数据的方法无法获取删除的行的数据。那么,有什么方法可以拿到删除行的所有数据吗?答案是有的,那就是利用RowChanging事件。这是RowChanging的API链接:
      
       https://demo.grapecity.com.cn/sp ... l#event:RowChanging


      从API我们可以获取变更的行索引,拿到这个行索引,我们就能做很多事了。拿到行索引,我们可以遍历该行的所有单元格,通过getValue去获取行内的所有数据,同时还能将有数值的单元格的列索引进行记录,存入数组。具体效果如下:


删除前:


删除后:


关键代码如下:
sheet.bind(GC.Spread.Sheets.Events.RowChanging, function (e, info) {
    var a = [];
    var b = [];
    for(var i = 0; i < sheet.getColumnCount(); i ++){
      if(sheet.getValue(info.row, i) !== null){
            a.push(sheet.getValue(info.row, i));
            b.push(i)
      }
    }
    console.log(a);
    console.log(b);
});

页: [1]
查看完整版本: 获取删除行的所有数据