找回密码
 立即注册

QQ登录

只需一步,快速开始

森森
金牌服务用户   /  发表于:2024-11-21 09:01  /   查看:143  /  回复:10
1金币
image.png232091368.png 怎么保存这个选中打勾的效果,不用保存sjs的方法,什么方法能够知道哪些被选中

最佳答案

查看完整内容

根据您提供的图示,看起来您使用的应该不是复选框列表单元格类型,更像是表单控件中的复选框。如果是复选框控件,它是一种形状,可以通过形状的value()方法获取或设置值。如下动图所示: 可以参考官网教程了解复选框控件的使用: https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/shapes/form-control/check-box#timestamp

10 个回复

倒序浏览
最佳答案
最佳答案
Wilson.Zhang
超级版主   /  发表于:2024-11-21 09:01:59
来自 9#
森森 发表于 2024-11-22 09:14
var sheet = this[/backcolo ...

根据您提供的图示,看起来您使用的应该不是复选框列表单元格类型,更像是表单控件中的复选框。如果是复选框控件,它是一种形状,可以通过形状的value()方法获取或设置值。如下动图所示:

CheckBox.gif

可以参考官网教程了解复选框控件的使用:
https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/shapes/form-control/check-box#timestamp
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-11-21 11:47:13
2#
您好!如果您需要在选框被点击后了解被选择的选项,可以通过Worksheet:getValue()对单元格获取值,也可以通过ValueChanged事件监听被选中的选项。您指的“保存这个选中打勾的效果”是只需要保存被选中的选项吗?需要跟您确认下关于这个需求的具体场景。
回复 使用道具 举报
森森
金牌服务用户   /  发表于:2024-11-21 13:15:44
3#
Wilson.Zhang 发表于 2024-11-21 11:47
您好!如果您需要在选框被点击后了解被选择的选项,可以通过Worksheet:getValue()对单元格获取值,也可以通 ...

就是我想保存被选中的效果,被选中后我点保存把选中的值存起来,再第二次刷新的时候再把选中的值渲染上去
回复 使用道具 举报
森森
金牌服务用户   /  发表于:2024-11-21 13:16:52
4#
Wilson.Zhang 发表于 2024-11-21 11:47
您好!如果您需要在选框被点击后了解被选择的选项,可以通过Worksheet:getValue()对单元格获取值,也可以通 ...

:getValue()似乎不能获取这种矩形框被选中的值吧
回复 使用道具 举报
森森
金牌服务用户   /  发表于:2024-11-21 13:22:39
5#
Wilson.Zhang 发表于 2024-11-21 11:47
您好!如果您需要在选框被点击后了解被选择的选项,可以通过Worksheet:getValue()对单元格获取值,也可以通 ...

image.png927641296.png 像红色框起来的部分getvalue获取的值是片(块、料)石,至于监听的话和我们需求有点不搭,而且我除了获取被选中效果还要回显被选中效果,我们是sjs文件和数据分离的一个状态,我需要将被选中的转换成数据,在sjs文件上回显
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-11-21 17:30:27
6#
森森 发表于 2024-11-21 13:22
像红色框起来的部分getvalue获取的值是片(块、料)石,至于监听的话和我们需求有点不搭,而且我除了获取 ...

是否可以这样理解:对sheet操作后,数据单独保存,sjs中只保存表格结构?再一次打开sjs文件时同时读取被保存的数据再渲染在sheet中?

您使用的应该是复选框列表吧?!如下动图所示,您可以看到复选框列表单元格中记录的值为数组类型,其中存储了选项对应的value。那么,根据这个存储值的形式,即可通过setValue()更换选项。
复选框单元格类型.gif

所以,如果只是需要保存复选框列表单元格的选值,通过Worksheet:getValue()即可获取选项数据,以相同的数据结构调用Worksheet:setValue()又可对复选框列表单元格切换选项。您看这样是否满足您的需求。
回复 使用道具 举报
森森
金牌服务用户   /  发表于:2024-11-22 09:13:52
7#
Wilson.Zhang 发表于 2024-11-21 17:30
是否可以这样理解:对sheet操作后,数据单独保存,sjs中只保存表格结构?再一次打开sjs文件时同时读取被 ...

是我代码的问题吗?我getValue获取不到复选框的值啊
回复 使用道具 举报
森森
金牌服务用户   /  发表于:2024-11-22 09:14:14
8#
Wilson.Zhang 发表于 2024-11-21 17:30
是否可以这样理解:对sheet操作后,数据单独保存,sjs中只保存表格结构?再一次打开sjs文件时同时读取被 ...

image.png709900512.png var sheet = this.spread.getActiveSheet();
      let columnCount = sheet.getColumnCount();
      let rowCount = sheet.getRowCount();
      for (let row = 0; row < rowCount; row++) {
        for (let col = 0; col < columnCount; col++) {
          /* 获取当前遍历单元格的值 */
          let value = sheet.getValue(row, col);
          console.log(value);
        }
      }


回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-11-28 15:15:51
10#
您好!请问下您的问题是否已得到解决?如未解决,欢迎您继续反馈。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部