找回密码
 立即注册

QQ登录

只需一步,快速开始

spencer

注册会员

9

主题

24

帖子

85

积分

注册会员

积分
85
spencer
注册会员   /  发表于:2022-2-27 23:05  /   查看:2146  /  回复:5
1金币
我们想实现在SpreadJS中以第一个表格为原始表格,用户可以点击“增加表格”按钮复制出多个表格
但是假设第一个表格命名为table0
根据我们的代码,第二个表格的名称就是table01
第三个表格的名称是table013

但是发现SpreadJS有个问题,当我们以第一个表格table0为原始表格,
复制后存入过渡变量,当改变过渡变量里表格的名称或其它属性时,也会同时改变原始表格table0的相应属性值

那么,就进入一个死循环,当我们增加表格时,我们必然要修改新复制的表格的位置和行数(这样他才不和第一个表格在显示时重合)
但是当我们一改变新的表格的名称、位置和行数,原始表格也同时被改变……

所以现在我们不知道如何实现复制表格这个功能,请帮忙看看,谢谢!

下方附上了该功能的代码片段以及调试的截图:



微信图片_20220227230106.png 微信图片_20220227230159.png 微信图片_20220227230412.png

index.rar (1.01 KB, 下载次数: 106)

最佳答案

查看完整内容

从上面的行为以及表现来看,应该是一个浅拷贝,如果想要按照原来的逻辑执行,建议搜索一下深浅拷贝相关的资料实现。 这边提供另一种更为简单的方法,就是使用copy进行表格的复制,可以参考附件的demo。

5 个回复

倒序浏览
最佳答案
最佳答案
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-2-27 23:05:30
来自 2#
从上面的行为以及表现来看,应该是一个浅拷贝,如果想要按照原来的逻辑执行,建议搜索一下深浅拷贝相关的资料实现。

这边提供另一种更为简单的方法,就是使用copy进行表格的复制,可以参考附件的demo。

data.html

1.55 KB, 下载次数: 90

回复 使用道具 举报
18577074114
中级会员   /  发表于:2022-2-28 18:02:00
3#
Derrick.Jiao 发表于 2022-2-28 09:26
从上面的行为以及表现来看,应该是一个浅拷贝,如果想要按照原来的逻辑执行,建议搜索一下深浅拷贝相关的资 ...

版主好!上午您发这个demo还是挺有参考价值的,不过我们现在遇到了新问题,请看图,但凡是类似第12、19行的字段标题行,我们都想做隐藏处理,可无法隐藏,代码请见附件,辛苦您帮看一下是什么原因,谢谢! 微信图片_20220228175352.png

spreadjs问题反馈(22-02-26).rar

65.17 KB, 下载次数: 99

回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-2-28 18:10:48
4#
18577074114 发表于 2022-2-28 18:02
版主好!上午您发这个demo还是挺有参考价值的,不过我们现在遇到了新问题,请看图,但凡是类似第12、19行 ...

如果想要隐藏表头,可以通过table.showHeader(false)这个接口隐藏指定table的表头。

另外,后续如果有新问题,建议开新帖交流并且把完整的demo提供,这边我们可以直接在demo中调试,否则,光从js文件,无论是理解还是调试都会比较费时。
回复 使用道具 举报
18577074114
中级会员   /  发表于:2022-2-28 18:24:45
5#
Derrick.Jiao 发表于 2022-2-28 18:10
如果想要隐藏表头,可以通过table.showHeader(false)这个接口隐藏指定table的表头。

另外,后续如果有 ...

好的 明白
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-3-1 09:36:02
6#

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