找回密码
 立即注册

QQ登录

只需一步,快速开始

HoneyBear
初级会员   /  发表于:2022-6-15 15:28  /   查看:2441  /  回复:8
20金币
1. 修改任意列筛选器
image.png134203185.png

2.点击保存筛选按钮,或将筛选选项序列化并存储至localstorage
image.png236864928.png

3. 刷新页面后,点击还原筛选
image.png379165343.png

问题:  筛选器样式发生改变  数据却没有根据之前的筛选状态进行还原

保存筛选器状态,未还原.zip

1006.37 KB, 下载次数: 145

最佳答案

查看完整内容

经调研,fromJSON后filter只是拿到了筛选状态,还没有执行出最终结果集,所以需要再调用一下filter的filter()方法,如下: 之后刷新sheet,即可重新载入筛选设置。

8 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-6-15 15:28:40
来自 7#
经调研,fromJSON后filter只是拿到了筛选状态,还没有执行出最终结果集,所以需要再调用一下filter的filter()方法,如下:
  1.   sheet.rowFilter().filter();
复制代码

image.png766609191.png
之后刷新sheet,即可重新载入筛选设置。
回复 使用道具 举报
ann悬赏达人认证
初级会员   /  发表于:2022-6-15 16:39:10
2#
您好:在清除筛选条件后,尝试下重新绘制表单试试呢
  sheet.repaint();
回复 使用道具 举报
HoneyBear
初级会员   /  发表于:2022-6-15 16:53:46
3#
ann 发表于 2022-6-15 16:39
您好:在清除筛选条件后,尝试下重新绘制表单试试呢
  sheet.repaint();

不是清除筛选条件,是想页面重新加载的时候把筛选条件再次回显回来
回复 使用道具 举报
ann悬赏达人认证
初级会员   /  发表于:2022-6-15 17:02:48
4#
昂 不好意思,刚理解错了,以为还原筛选是要还原到应用筛选前的状态呢。我们不是保存了筛选信息么,刷新页面之后重新应用一下筛选条件试试呢
回复 使用道具 举报
HoneyBear
初级会员   /  发表于:2022-6-15 17:15:40
5#
ann 发表于 2022-6-15 17:02
昂 不好意思,刚理解错了,以为还原筛选是要还原到应用筛选前的状态呢。我们不是保存了筛选信息么,刷新页 ...

附件中的例子是这么做的,可是确实没有还原筛选的状态
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-6-15 18:49:29
6#
您好,
问题已复现,这边需要根据代码进一步调研下原因,待有结果在本贴通知您。
回复 使用道具 举报
HoneyBear
初级会员   /  发表于:2022-6-20 17:39:51
8#
Lynn.Dou 发表于 2022-6-15 15:28
经调研,fromJSON后filter只是拿到了筛选状态,还没有执行出最终结果集,所以需要再调用一下filter的filter ...

感谢~ 感谢~
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-6-20 17:56:07
9#
您客气了,那本帖就先结贴了,有问题欢迎另开新帖交流。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部