handsontable 排序问题
排序是表格的基础功能,handsontable也会支持。
有时需求会很复杂,需要自定义排序,或者调用其他排序方法;自定义排序,比较复杂,没做过;今天要用的是调用R中的排序方法。
有两个事件beforeColumnSort 和 afterColumnSort;有用的是前者,index,order参数,但是不支持:return false; 禁用默认的排序方法。
在源码中,有几个重要的地方:
defaultSort:默认的排序方法;因为表格中data和字符串混在一起,想只对data排序,如果typeof a[1] == 'String' 把a[1] = infinity或者return -1;结果也不理想。它支持的排序算法有问题,只会两两比较,如果有相同的数字,则会与后一个数字进行比较,排序结果就会出错。
this.defaultSort:下一句是调用排序方法。如果注释掉,就不会执行,但是图标还会发生变化。
beforeColumnSort:排序的事件流程,可以看清楚,各阶段的效果
beforeColumnSort event:通过设置hot.sortOrder = false; 第一次的排序,仍然是从小到大。后面还会出错。
目的:string不参与排序
1、修改defaultSort没有成功;
2、注释掉执行排序的语句,由R排序,再刷新数据,标示就会一闪而过,因为表格会刷新。
20151104 排序没有实现。
虽然由R排好序,再刷新数据,但是想要handsontable支持的三角形标示,有4个thead,不知道那个class该加在哪?如果不要标示,就需要一个对象来维护每个column的排序状态:先增再减再增。
R默认的sort 以上已经说明过,过程有点复杂,一时半会调不好;如果第一行冻结的话,defaultsort的结果,第一行会有两组数据,其中一组盖着另一组,好像有这个情况。
计划:加一个按钮,来表示排序状态,不用默认的排序流程了。
handsontable 排序问题的更多相关文章
- 编程之美—烙饼排序问题(JAVA)
一.问题描述 星期五的晚上,一帮同事在希格玛大厦附近的"硬盘酒吧"多喝了几杯.程序员多喝了几杯之后谈什么呢?自然是算法问题.有个同事说:"我以前在餐 馆打工,顾 ...
- 关于SQL中的排序问题
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguratio ...
- handsontable组件和jqwidgets(jqxdragdrop组件)在一个页面产生调整宽高bug
修改handsontable.full.js handsontable绑定的"mouseup"事件,默认是window区域太大.引起冲突.
- distinct order by 排序问题
使用类似“SELECT DISTINCT `col` FROM `tb_name` ORDER BY `time` DESC”这样的sql语句时,会遇到排序问题. 以上面的sql语句分析:order ...
- Java学习-046-日志抓取合并后排序问题解决方案之 --- log4j 二次定制,实现日志输出添加延时10ms
自3月25至今,已经好久没有写学习日志了,今天在写日志抓取合并的小方法,发现抓取后的日志并米有依据系统执行的日志顺序排序.日志抓取排列逻辑如下: 通过日志标识,从各个日志文件(例如 use.log,e ...
- js关于对象键值为数字型时输出的对象自动排序问题的解决方法
一.对象键值为数字型时输出的对象自动排序问题如: var objs = { "1603":{id:"1603"}, "1702" ...
- MySQL中怎么对varchar类型排序问题
MySQL中怎么对varchar类型排序问题 在mysql默认order by 只对数字与日期类型可以排序,但对于varchar字符型类型排序好像没有用了,下面我来给各位同学介绍varchar类型排序 ...
- Handsontable 学习笔记-Methods
Handson: 亲自实践 先给出数据源和基本配置: var data =[ ["A1","B1","C1","D1"] ...
- Java中中文拼音的排序问题
最近做一个手机数据同步的应用开发,需要提供地址簿信息按照姓名的拼音次序进行排序.但仔细考察Java提供的Collator之后,发现其中文拼音排序存在严重的问题.Java提供Collator来支持不同语 ...
随机推荐
- (转)关于X64位系统IIS7下支持32位asp.net程序
最近在windows2008 x64位系统下的IIS7下部署asp.net程序. vs2005或vs2008默认的情况下是Any cpu 的也就是支持x86和x64两种系统的.可我的程序在引用了一个三 ...
- 安全概念:DMZ(非军事化区,隔离区)
DMZ是英文“demilitarized zone”的缩写,中文名称为“隔离区”,也称“非军事化区”.它是为了解决安装防火墙后外部网络不能访问内部网络服务器的问题,而设立的一个非安全系统与安全系统之间 ...
- 如何通过class文件来查看java的版本
我们知道class文件是通过javac编译生成的,如果我们想知道是java的那个版本生成的,该怎么做? 很简单,Linux下只要使用od命令,如下: 前四个字节为固定的cafe babe,接下来的四个 ...
- RNA测序相对基因表达芯片有什么优势?
RNA测序相对基因表达芯片有什么优势? RNA-Seq和基因表达芯片相比,哪种方法更有优势?关键看适用不适用.那么RNA-Seq适用哪些研究方向?是否您的研究?来跟随本文了解一下RNA测序相对基因表达 ...
- C++ 的虚析构函数
当一个基类的指针指向一个派生类的对象,并用该基类的指针去删除或者析构派生类对象时,如果基类的析构函数不是声明为虚函数,那么在析构时基类的析构函数将会被直接调用,派生类的析构函数应为没被调用而导致内存泄 ...
- 大神你好,可以帮我P张图吗?
韩国版的求大神帮我P张图,看得有点下巴脱臼啊!哈哈哈哈哈哈哈~ 感觉照片拍得很尴尬,请大神P得更有动感 拍了跳跃照片,但内衣露出来一点,能帮忙去掉吗 不喜欢没穿制服的样子,请帮忙加上制服 希望背景 ...
- 状态机学习(三)解析JSON1
来自 从零开始的 JSON 库教程 从零开始教授如何写一个符合标准的 C 语言 JSON 库 作者 Milo Yip https://zhuanlan.zhihu.com/json-tutorial ...
- Ionic学习
1. 原来Http不能直接加在普通类里,下面的报错 import { Component } from '@angular/core'; import { NavController } from ' ...
- 使用Hadoop API 解压缩 HDFS文件
接上篇:使用Hadoop API 压缩HDFS文件 压缩完了,当然需要解压缩了. 直接上代码: private static void getFile(String filePath) throws ...
- ES6展开运算符的3个用法
展开运算符的用法1:传参 // 展开运算符的用法1 : 传参 function test(a,b) { return a + b ; } var arr = [1,2]; console.log(te ...