找回密码
 立即注册

QQ登录

只需一步,快速开始

Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-4-26 12:24:31
11#
您指的时监听排序引起的单元格变化吗?
如果是,请监听RangeChanged事件,API如下:
https://demo.grapecity.com.cn/sp ... #event:RangeChanged
https://demo.grapecity.com.cn/sp ... .RangeChangedAction
image.png500105590.png
回复 使用道具 举报
iyiou
初级会员   /  发表于:2022-4-26 21:47:22
12#
image.png433698729.png

排序没有按照从小到大或者从大到小排序什么原因

下面是代码

sheet.sortRange(1, 0, sheet.getRowCount() - 1, sheet.getColumnCount(), true, [{
        index: col,
        ascending: tag
    }]);

回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-4-27 11:41:20
13#
本帖最后由 Lynn.Dou 于 2022-4-27 13:50 编辑

从图片看B列应该是字符串,而不是number,您使用getValue获取下该列值实际查看下。
如果想实现B列升序/降序效果,将value修改为number类型即可,或追溯下该数据是如何产生的,从源头避免此问题。 image.png400706786.png

另,从代码看您是对A列进行了排序,但从问题描述中判断您应该是想对B列排序的。所以请在修改value为number后,再将代码修改如下实际测试下:
sheet.sortRange(1, 1, sheet.getRowCount() - 1, sheet.getColumnCount(), true, [{
        index: 1,
        ascending: true // 升序
    }]);

回复 使用道具 举报
iyiou
初级会员   /  发表于:2022-4-27 11:57:36
14#
本帖最后由 iyiou 于 2022-4-27 12:12 编辑

是的,B列是字符串,不是number。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-4-27 13:46:34
15#
本帖最后由 Lynn.Dou 于 2022-4-27 13:50 编辑

那您参考上个回复中的方案实际测试下,看能否解决此问题:
image.png910269164.png
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部