zoukankan      html  css  js  c++  java
  • 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的结果,第一行会有两组数据,其中一组盖着另一组,好像有这个情况。

    计划:加一个按钮,来表示排序状态,不用默认的排序流程了。

  • 相关阅读:
    MVC实现类似QQ的网页聊天功能-ajax(下)
    SQLServer中跨库复制数据
    MVC实现类似QQ的网页聊天功能-Ajax(上)
    好看的Select下拉框是如何制造的
    Vss服务端用户存在,但客户端登陆不进去
    Jquery-uploadify多文件上传插件使用介绍
    jQuery mouseover,mouseout事件多次执行的问题处理
    解决svn状态图标不显示的办法
    ASP.NET获取用户端的真实IP
    js中时间戳与日期转换-js日期操作
  • 原文地址:https://www.cnblogs.com/wang-jing/p/4931899.html
Copyright © 2011-2022 走看看