利用自定义排序实现中文排序
背景:目前SJS排序方式不支持中文排序,所以需要利用自定义排序来实现。
关于自定义排序相关内容请参考学习指南:
https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/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。
页:
[1]