背景:
目前SJS排序方式不支持中文排序,所以需要利用自定义排序来实现。
关于自定义排序相关内容请参考学习指南:
https://demo.grapecity.com.cn/sp ... res/worksheet/sort#
接下来主要介绍如何实现中文排序。
主要代码:
- var isAscending;
- function initSpread(spread) {
- ...
- sheet.bind(GC.Spread.Sheets.Events.RangeSorting, function (e, info) {
- isAscending = info.ascending;
- info.compareFunction = sortDomain
- });
- ...
- }
- function sortDomain(value1, value2) {
- console.log(value1, '---------', value2)
- console.log(isAscending);
- if(value1 && value2) {
- return value1.toString().localeCompare(value2.toString(), 'zh');
- } else if(!value1 && !value2) {
- return 0;
- } else if(value1 && !value2) {
- return isAscending?-1:1;
- } else if(!value1 && value2) {
- return isAscending? 1:-1;
- }
- }
复制代码 最终效果如下图:
完整代码请参考附件demo。
|
|