找回密码
 立即注册

QQ登录

只需一步,快速开始

zhangjintao

注册会员

18

主题

45

帖子

147

积分

注册会员

积分
147
zhangjintao
注册会员   /  发表于:2018-7-25 17:11  /   查看:3030  /  回复:9
详见附件

json.rar

5.56 KB, 下载次数: 92

9 个回复

倒序浏览
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-7-25 18:04:29
沙发
这是因为您改defaultstyle的backcolor,您的backcolor是null, 默认是undefined,null和undefined不等价
回复 使用道具 举报
zhangjintao
注册会员   /  发表于:2018-7-25 23:40:52
板凳
ClarkPan 发表于 2018-7-25 18:04
这是因为您改defaultstyle的backcolor,您的backcolor是null, 默认是undefined,null和undefined不等价

你好,可以通过截图的方式标识出去修正哪个地方的backcolor吗,json里面有太多的backcolor,不知道修改哪里,谢谢
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-7-26 09:51:15
地板
这个您得自查啊,您这样的json是怎样生成的,生成时候是哪个代码去设置的backcolor为null,我们默认的设置backcolor都是undefined,所以要看您是怎样将他生成成null的。
回复 使用道具 举报
zhangjintao
注册会员   /  发表于:2018-7-26 19:27:20
5#
ClarkPan 发表于 2018-7-26 09:51
这个您得自查啊,您这样的json是怎样生成的,生成时候是哪个代码去设置的backcolor为null,我们默认的设置ba ...

第一:作为初学者,查了你们的API,没找到解决办法,打电话求助,你们让发帖子,你的回复是说defaultstyle的backcolor设定不对,我们马上自查json与代码,一头雾水
第二:生成时没有任何地方设定backcolor,用你们的srpeadjs的tojson获取到的JSON
第三:下拉列表的设定代码也是用的你们的demo中的,地址
https://demo.grapecity.com.cn/Sp ... demos/basicCellType中的如下代码

var combo = new spreadNS.CellTypes.ComboBox();
    combo.items([{ text: "Oranges", value: "11k" }, { text: "Apples", value: "15k" }, { text: "Grape", value: "100k" }]);
    combo.editorValueType(spreadNS.CellTypes.EditorValueType.text);   
    sheet.getCell(3, 2, spreadNS.SheetArea.viewport).cellType(combo).value("Grape");
    sheet.setValue(3, 1, "ComboBoxCellType");
第四:我只想知道哪里出了问题,你都看到了我们把他设定成了null,为什么不直接点出来,还要来回的效率这么低的发帖询问
回复 使用道具 举报
zhangjintao
注册会员   /  发表于:2018-7-26 19:34:11
6#
还有就是你说的这个backcolor的设定是指的下拉列表backcolor的设定还是这个spreadjs的backcolor的设定
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-7-27 09:30:54
7#
因为SpreadJS 的toJSON是将您的页面上的信息序列化成JSON对象,这个序列化的JSON我们不建议进行修改,SpreadJS本身也没有提供对JSON的修改方式。那么既然JSON不能进行修改只能去找源头了对吧,这也是我之前为啥问您JSON是怎样生成的,代码中设置了什么变动导致的序列化出来是null,我们这边尝试正常设置combobox根本不能重现问题,这样问您也无可厚非。
再一个为什么发帖询问,您觉得如果不发帖,通过电话的方式您的JSON我们如何看到,看不到JSON我们也就无法去确认问题的原因。这就是为什么要您发帖的原因。
最后我说的backColor指的是SpreadJS的backColor设定,下拉列表没有backColor的设置接口。
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-7-30 15:35:44
8#
将"backColor":null, 直接删掉,不能替换为"backColor":undefined, 因为json文件中undefined是关键字。
另外,建议还是从源头找一下问题的原因,直接修改json文件容易出错。
回复 使用道具 举报
zhangjintao
注册会员   /  发表于:2018-7-30 15:44:00
9#
ClarkPan 发表于 2018-7-30 15:35
将"backColor":null, 直接删掉,不能替换为"backColor":undefined, 因为json文件中undefined是关键字。
另 ...

简单粗暴,但是非常有效,谢谢,已解决
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-7-30 16:33:58
10#
解决了就好,那就结帖了,有什么问题欢迎另开新帖进行询问。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部