找回密码
 立即注册

QQ登录

只需一步,快速开始

Atom

注册会员

2

主题

6

帖子

16

积分

注册会员

积分
16
  • 65

    金币

  • 2

    主题

  • 6

    帖子

最新发帖
Atom
注册会员   /  发表于:2024-1-30 17:00  /   查看:2034  /  回复:7
1金币
"3": {
            "value": "name",
             "style": "__b-2-8"
         },


style的"_b-2-8"是什么意思呢

最佳答案

查看完整内容

那么您可以通过worksheet.getRange(row,col).getDisplayFormat().getNumberFormat()来获取当前单元格的格式代码,从而判断您提交的ssjson数据前后的单元格格式 效果如下:

7 个回复

正序浏览
Atom
注册会员   /  发表于:2024-1-31 09:41:18
7#
我的需求就是GCExcel 校验第二次提交的SSJSON 数据,确保单元格格式一样,没有被修改。如果是数值型,修改前后都是数值型,如果是文本型,修改前后都是文本型,
image.png815100097.png
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-1-30 17:35:58
6#
Atom 发表于 2024-1-30 17:33
GCExcel如何反序列化得到当前单元格完整的 style 数据呢?

完整的style 数据:

如上述所说,GcExcel也会根据这个自定义的名称去找到对应的样式进行反序列化,请问您的具体需求是什么,您期望实现一个什么样的功能呢?我们会根据您的具体需求去推荐给您第一个合适的方案
回复 使用道具 举报
Atom
注册会员   /  发表于:2024-1-30 17:33:28
5#
本帖最后由 Atom 于 2024-1-30 17:35 编辑

GCExcel如何反序列化

"3": {
              "value": "name",
              "style": "__b-2-8"
            },
得到当前单元格完整的 style 数据呢?

完整的style 数据:
"3": {
              "value": 43463245123,
              "style": {
                "backColor": null,
                "foreColor": "",
                "hAlign": 3,
                "vAlign": 0,
                "font": "14.7px Calibri",
                "themeFont": "Body",
                "formatter": "0.00",
                "borderLeft": {
                  "style": 0
                },
                "borderTop": {
                  "style": 0
                },
                "borderRight": {
                  "style": 0
                },
                "borderBottom": {
                  "style": 0
                },
                "locked": false,
                "textIndent": 0,
                "wordWrap": false,
                "shrinkToFit": false,
                "textDecoration": 0,
                "imeMode": 1,
                "quotePrefix": false
              }
            }
回复 使用道具 举报
Atom
注册会员   /  发表于:2024-1-30 17:18:27
4#
那如果我要判断当前单元格的格式,要怎么处理呢,比如判断是数值还是文本
image.png771684875.png
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-1-30 17:11:09
3#
这里的“_b-2-8”是SpreadJS在序列化时为单元格的样式做的一个自定义命名,方便反序列化时根据这个命名反序列化成对应的单元格样式,因此没有什么实际的意思,仅仅作为SpreadJS内部的逻辑使用
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-1-30 17:09:58
2#
“_b-2-8”这个值代表的是该单元格的样式名称字符串。你可以通过控件的接口获取到同样的内容
  1. sheet.getStyleName(rowindex,colindex)
复制代码


另外,不建议直接解析json甚至于修改json,很容易因为内容错误导致其他的问题。相关的数据都建议通过spreadjs提供的接口获取

回复 使用道具 举报
最佳答案
最佳答案
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-1-30 17:00:44
来自 8#
Atom 发表于 2024-1-31 09:41
我的需求就是GCExcel 校验第二次提交的SSJSON 数据,确保单元格格式一样,没有被修改。如果是数值型,修改 ...

那么您可以通过worksheet.getRange(row,col).getDisplayFormat().getNumberFormat()来获取当前单元格的格式代码,从而判断您提交的ssjson数据前后的单元格格式
效果如下:
image.png831082458.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部