找回密码
 立即注册

QQ登录

只需一步,快速开始

一蓑烟雨

初级会员

14

主题

49

帖子

368

积分

初级会员

积分
368
一蓑烟雨
初级会员   /  发表于:2020-10-30 12:11  /   查看:3360  /  回复:9
本帖最后由 一蓑烟雨 于 2020-11-4 12:09 编辑

如题,spreadjs 加载 接送数据后最上面的 AB C D ...列会消失,但是导入外部excel表格就不会有这样的问题。
企业微信截图_16040309485228.png
企业微信截图_16040309094242.png
企业微信截图_1604030875701.png

9 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-10-30 12:25:29
沙发
您好,初步判断可能您把第一行的数据设置为列头了

建议您看下您的数据源中是否有设置列头的操作

若没有,建议您上传能复现问题的demo
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-10-30 14:03:46
板凳
这个是数据源:

[{"销售部门":"晋陕","销售部代码":"6027","销售部":"陕西销售部(厨卫)","物料编码":"565102146098","物料名称":"立邦甄彩美缝剂(月光银)-10支","层次一":"厨卫","层次二":"填缝类","层次三":"立邦","层次四":"美缝剂","层次五":"立邦甄彩美缝剂","规格":"10支/箱","A价格(含税)":0,"去年月均":0,"10月实际数量":0,"10月实际金额(未税)":0,"11月预估数量":0,"12月预估数量":0,"1月预估数量":0,"11月预估金额(未税)":0,"12月预估金额(未税)":0,"1月预估金额(未税)":0},
{"销售部门":"晋陕","销售部代码":"6027","销售部":"陕西销售部(厨卫)","物料编码":"503400296002","物料名称":"靓彩易涂防水-华耐专供","层次一":"厨卫","层次二":"防水类","层次三":"乐可施","层次四":"通用防水","层次五":"乐可施经典通用防水","规格":"18KG","A价格(含税)":130,"去年月均":0,"10月实际数量":0,"10月实际金额(未税)":0,"11月预估数量":0,"12月预估数量":0,"1月预估数量":0,"11月预估金额(未税)":0,"12月预估金额(未税)":0,"1月预估金额(未税)":0}]

这个是代码:

var sheet = spread.getActiveSheet();

                //绑定数据
                sheet.autoGenerateColumns = true;
                sheet.setDataSource(dataSource);

                //冻结行和列
                sheet.frozenColumnCount(5);

                //设置列宽
                sheet.setColumnWidth(0, 50);
                sheet.setColumnWidth(1, 50);
                sheet.setColumnWidth(2, 80);
                sheet.setColumnWidth(3, 100);
                sheet.setColumnWidth(4, 200);
                sheet.setColumnWidth(5, 50);
                sheet.setColumnWidth(6, 50);
                sheet.setColumnWidth(7, 50);
                sheet.setColumnWidth(8, 80);
                sheet.setColumnWidth(9, 80);
                sheet.setColumnWidth(10, 80);
                sheet.setColumnWidth(11, 50);
                sheet.setColumnWidth(12, 50);
                sheet.setColumnWidth(13, 80);
                sheet.setColumnWidth(14, 80);
                sheet.setColumnWidth(15, 80);
                sheet.setColumnWidth(16, 80);
                sheet.setColumnWidth(17, 80);
                sheet.setColumnWidth(18, 80);
                sheet.setColumnWidth(19, 80);
                sheet.setColumnWidth(20, 80);

                //设置第三列格式为文本格式
                sheet.getRange(0, dataSource.length, 3).formatter("@");

                //开启单元格筛选
                var cellrange = new GC.Spread.Sheets.Range(0, 0, dataSource.length, 12);
                var hideRowFilter = new GC.Spread.Sheets.Filter.HideRowFilter(cellrange);
                sheet.rowFilter(hideRowFilter);
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-10-30 14:20:19
地板
您将筛选的范围改为如下语句试试,筛选的range不应该包括头部区域,您可以参考学习指南这个例子的范围:
https://demo.grapecity.com.cn/sp ... ilter-dialog/purejs

var cellrange = new GC.Spread.Sheets.Range(1, 0, dataSource.length-1, 12);

如果仍为解决您的问题,建议您将这个例子打包上传,如果您不希望别人看到可以设置查看权限。(上传在高级模式中点击附件即可)
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-10-30 15:08:25
5#
这个是demo和效果截图。可以看到加载数据后A B C D列消失了

绑定后页面

绑定后页面

绑定前页面

绑定前页面

demo.zip

1.4 KB, 下载次数: 152

回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-10-30 15:45:58
6#
一蓑烟雨 发表于 2020-10-30 15:08
这个是demo和效果截图。可以看到加载数据后A B C D列消失了

这边看了您的代码您用的是表单绑定,在表单绑定时,我们默认会覆盖列头,属于产品设计

如果您不希望覆盖,建议您使用单元格绑定或表格绑定
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-10-31 19:15:19
7#
请问如果使用表格绑定该如何修改代码?
回复 使用道具 举报
一蓑烟雨
初级会员   /  发表于:2020-10-31 21:12:00
8#
如果使用单元格绑定的话,数据量大的时候速度会很快吗?
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-11-2 09:57:12
9#
一蓑烟雨 发表于 2020-10-31 19:15
请问如果使用表格绑定该如何修改代码?

表格绑定您可以参考这个例子
https://demo.grapecity.com.cn/sp ... able-binding/purejs
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-11-2 09:58:22
10#
一蓑烟雨 发表于 2020-10-31 21:12
如果使用单元格绑定的话,数据量大的时候速度会很快吗?

单元格绑定您可以参考这个例子https://demo.grapecity.com.cn/sp ... evel-binding/purejs

理论上性能速度不会有太大差异
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部