找回密码
 立即注册

QQ登录

只需一步,快速开始

chou19870206

初级会员

26

主题

70

帖子

206

积分

初级会员

积分
206
chou19870206
初级会员   /  发表于:2020-8-3 16:16  /   查看:4402  /  回复:7
1金币
场景:我们公司主要使用SpreadJS进行数据录入,由于页面上的列比较多,用户每次都会根据需要临时隐藏不想看到的列,或对行进行一些筛选。但在数据保存后页面再次刷新后之前隐藏的列或筛选条件就没了,又得重来,很不方便

问题1:有没有办法在用户保存数据的时候将表单上的设置也保存下来,下次加载直接引用?

问题2:如果1不行或不好实现,有没有办法在用户保存后不刷新页面(已实现),但插入的数据行的状态进行更改(改成不是新增的数据),下次再次保存的时候不把之前已保存的数据当做新增数据?

最佳答案

查看完整内容

获取隐藏列的信息getColumnVisible:https://demo.grapecity.com.cn/spreadjs/help/latest/content/SpreadJS~GC.Spread.Sheets.Worksheet~getColumnVisible.html 设置列的隐藏状态:https://demo.grapecity.com.cn/spreadjs/help/latest/content/SpreadJS~GC.Spread.Sheets.Worksheet~setColumnVisible.html

7 个回复

倒序浏览
最佳答案
最佳答案
Fiooona
论坛元老   /  发表于:2020-8-3 16:16:06
来自 4#
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2020-8-3 17:05:42
2#
参考这个教程:https://gcdn.grapecity.com.cn/showtopic-74149-1-2.html
如果还有问题可以跟贴追问
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
chou19870206
初级会员   /  发表于:2020-8-3 17:11:52
3#
Fiooona 发表于 2020-8-3 17:05
参考这个教程:https://gcdn.grapecity.com.cn/showtopic-74149-1-2.html
如果还有问题可以跟贴追问

感谢回复!

这个链接中只提到保存筛选,那隐藏列是否可以保存呢,有没有相关链接可以参考?感谢!
回复 使用道具 举报
alenboy
注册会员   /  发表于:2020-8-3 17:40:26
5#
本帖最后由 alenboy 于 2020-8-3 17:46 编辑

隐藏列,列宽调整,每个用户可能都会不同,以下代码是我之前应用的,应该符合你的要求,可参考:

            //在列宽度改变事件中记住当前表单被用户更改的列宽度
            spread.bind(GC.Spread.Sheets.Events.ColumnWidthChanged, function (e, info) {   
               
                 localStorage.setItem(window.location.href+','+info.sheet.name() +','+info.colList,info.sheet.getColumnWidth(info.colList))


            });  





//下面的代码请在加载表格后调用:


                //根据用户保存的列宽度 设置列宽度(上层还有一个循环是遍历全部表单,请自己添加代码)

                for(ii=0; ii<sheet.getColumnCount(); ii++){
                    var colWidth = localStorage.getItem(window.location.href+','+sheet.name()+','+ii);
                    
                    if(colWidth!=null){
                        var colWidthint = parseInt(colWidth); //要转换成 int 才可以!
                        sheet.setColumnWidth(ii, colWidthint);
                    }
                }


//页面筛选也可以参考这个方案,此方案的好处是可以每个用户将自己的筛选和列宽以及隐藏的列结果保存在本地客户端电脑上,不会影响其他用户。





评分

参与人数 1金币 +300 收起 理由
Fiooona + 300 赞一个!

查看全部评分

回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2020-8-3 17:47:06
6#
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
chou19870206
初级会员   /  发表于:2020-8-3 17:55:05
7#
alenboy 发表于 2020-8-3 17:40
隐藏列,列宽调整,每个用户可能都会不同,以下代码是我之前应用的,应该符合你的要求,可参考:

       ...

好勒,非常感谢!
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2020-8-3 17:57:41
8#
结帖
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部