找回密码
 立即注册

QQ登录

只需一步,快速开始

一蓑烟雨

初级会员

14

主题

49

帖子

368

积分

初级会员

积分
368
一蓑烟雨
初级会员   /  发表于:2020-11-27 17:12  /   查看:3589  /  回复:5
spreadjs中使用表格绑定数据后

表格绑定:sheet.tables.addFromDataSource('table1', 0, 0, dataSource);


如何获取修改和删除的行?

原先的方法:sheet.getDirtyRows(); 和 sheet.getDeletedRows(); 都无法获取修改行和删除行的数据。

5 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-11-27 18:14:07
沙发
删除行您可以用rowChanged事件监听,修改数据您可以用valueChanged事件监听
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-11-28 18:13:36
板凳
那如果是想要在修改或者删除时获取该行的所有数据该怎么做呢?
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-11-30 10:24:12
地板
本帖最后由 DerrickJiao 于 2020-11-30 11:58 编辑
一蓑烟雨 发表于 2020-11-28 18:13
那如果是想要在修改或者删除时获取该行的所有数据该怎么做呢?

您可以参考下面的代码,使用RowChanging事件,在删除行的时候,遍历该行,将有数值的单元格利用数组存起来。

另外,有值的单元格的列索引可以用数据存起来。
  1. sheet.bind(GC.Spread.Sheets.Events.RowChanging, function (e, info) {
  2.     var a = [];
  3.     var b = [];
  4.     for(var i = 0; i < sheet.getColumnCount(); i ++){
  5.         if(sheet.getValue(info.row, i) !== null){
  6.             a.push(sheet.getValue(info.row, i));
  7.             b.push(i)
  8.         }
  9.     }
  10.     console.log(a);
  11.     console.log(b);
  12. });
复制代码


回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-11-30 16:49:00
5#
问题已解决,感谢!
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-11-30 16:51:55
6#
一蓑烟雨 发表于 2020-11-30 16:49
问题已解决,感谢!

不用客气,解决了就好,那这边先给您结贴了,有新问题欢迎开新帖交流~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部