找回密码
 立即注册

QQ登录

只需一步,快速开始

zhouhao

中级会员

69

主题

163

帖子

732

积分

中级会员

积分
732
zhouhao
中级会员   /  发表于:2022-1-6 14:11  /   查看:2408  /  回复:5
本帖最后由 zhouhao 于 2022-1-6 16:50 编辑

图片.png848998412.png
在一个文件中发现存在一个没有type的数据验证,请问什么场景下才会导致文件中出现这种情况呢?用excel或者wps另存问价也没有去掉这个



5 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-6 16:31:21
推荐
本帖最后由 Lynn.Dou 于 2022-1-6 16:40 编辑
zhouhao 发表于 2022-1-6 15:40
但是在对sheet进行toJSON时,validations里面依然存在该数据验证,以上操作实际上只是更新了单元格的数据 ...

"但是在对sheet进行toJSON时,validations里面依然存在该数据验证"
我这边测试,在使用上述问题1所述方案后(即 setDataValidator(0, 0, null)),
此时sheet导出的json中将不再有该数据验证信息validations,即实现了“彻底删除数据验证”。
image.png291156615.png
这边将测试过程录制了动图(见附件),您可以参考并实际操作测试下。

您说的“以上操作实际上只是更新了单元格的数据验证绑定关系”,
setDataValidator方法参数为null时就不存在这个绑定关系了,即此时数据验证已经被彻底删除了。
只有绑定另一个不为null的数据验证,才是您理解的“更新了数据验证绑定关系”。
这样描述您能理解吗。


录制gif.zip

5.76 MB, 下载次数: 277

回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-6 14:29:46
沙发
您好,
正常情况下,在初始化表单之后,不通过UI或者代码设置数据验证时,SJS是不会创建这样的空验证的。
“什么场景下才会导致文件中出现这种情况”
目前还没遇到过类似的问题,所以这边也不清楚下该空验证可能产生的原因,
建议您从该文件的产生源头调研,看是否是误操作或者某些代码造成的此问题。
如果想删除空数据验证,可以参考下方代码:
sheet.setDataValidator(0, 0, null)
回复 使用道具 举报
zhouhao
中级会员   /  发表于:2022-1-6 14:37:42
板凳
Lynn.Dou 发表于 2022-1-6 14:29
您好,
正常情况下,在初始化表单之后,不通过UI或者代码设置数据验证时,SJS是不会创建这样的空验证的。
...

setDataValidator只能解绑单元格数据验证无法彻底删除这个数据验证吧?另外添加单元格数据验证时貌似是新增了一个数据验证,是否可以绑定到已有的数据验证上面呢?
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-6 15:33:34
地板
本帖最后由 Lynn.Dou 于 2022-1-6 16:32 编辑

问题1:
使用setDataValidator 方法 设置参数为null时,即表示清除了该单元格数据验证。
您可以实际导出json测试下,此时该单元格将不再包含数据验证信息。

问题2:
一个单元格只能有一个数据验证,
如果在已有数据验证的单元格上设置了新的数据验证   (注意:这个新的数据验证不是null,而是你自己创建的一个数据验证),
则这个新的数据验证会直接替换掉原来的数据验证。
如果想在一个单元格同时验证多个条件,可以考虑使用“基于公式的数据验证”,
利用公式对这多个条件进行判断。
具体请参考下方文章示例:
https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=100245
回复 使用道具 举报
zhouhao
中级会员   /  发表于:2022-1-6 15:40:23
5#
Lynn.Dou 发表于 2022-1-6 15:33
问题1:
使用setDataValidator 方法 设置参数为null时,即表示清除了该单元格数据验证。
您可以实际导出j ...

但是在对sheet进行toJSON时,validations里面依然存在该数据验证,以上操作实际上只是更新了单元格的数据验证绑定关系,我想知道是否有办法彻底删除这个数据验证,还是说只能作为脏数据一直存在着
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部