特定列上的 Jquery Handsontable 排序

Posted

技术标签:

【中文标题】特定列上的 Jquery Handsontable 排序【英文标题】:Jquery Handsontable Sorting on specific columns 【发布时间】:2013-09-16 15:58:29 【问题描述】:
     **Sorting Issue**

我有一个用于handsontable 的插件。我正在对列标题进行排序,排序工作正常,但我需要的是对特定列的排序。

这可能在handsontable中吗??我整天都在搜索。

我有以下代码:

 **Code Section Handsontable**

    var $container = $("#grid");
    $container.handsontable(
        data:myData,
        startRows:10,
        startCols: 22,
        colWidths: [50, 50, 50, 50, 50, 50, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 70, 80, 80, 80],
        width:1380,
        height: 360,
        contextmenu: true,
        rowHeaders: true,
        manualColumnResize: true,
        manualColumnMove: true,
        colHeaders: ["Bold", "Empty", "LN", "Cust", "Leas", "Sub<br/>Cust", "Sub <br/>Leas", "EMC", "Sub <br/>CSO<br/>S", "FA<br/>LN",
        "M", "Non-<br/>Rev", "S Ops<br/>ID", "Sales", "Imp Dir", "Imp Date", "IC", "Mod", "Eng", "Cont-<br/>Date", "Current<br/>Eff",
        "Current<br/>CSOS"],

        columns: [ data: 0, readOnly: true ,  data: 1, readOnly: true ,  data: 2 ,  data: 3 ,  data: 4 ,  data: 5 ,  data: 6 ,  data: 7 ,  data: 8 
             ,  data: 9 ,  data: 10 ,  data: 11 ,  data: 12 ,  data: 13 ,  data: 14 ,  data:15 ,  data: 16 ,  data: 17 ,  data: 18 
             ,  data: 19 ,  data: 20 , data:21],
        columnSorting: true,
    );

我已将列排序设置为 true,是否可以在特定列上完成。 我不想对列销售进行排序。如果用户点击它,我不想对数据进行排序。 任何有关如何完成这项工作或完成工作的其他方向的建议将不胜感激。

【问题讨论】:

【参考方案1】:

按第五列降序排序

columnSorting: 
    column: 4,
    sortOrder: true


,

【讨论】:

【参考方案2】:

这是一个非常奇怪的解决方案,但它对我有用。 当您将标题文本放入标签时,Handsontable 不会对排序做出反应,例如。 所以我建议你将 colHeaders: 部分中的“Sales”标题定义为:

"<span>Sales</span>"

奇怪,但它有效。

【讨论】:

以上是关于特定列上的 Jquery Handsontable 排序的主要内容,如果未能解决你的问题,请参考以下文章

将 JQuery Handsontable 保存到服务器上的 excel 文件中

SQL:在连接后获取列上的特定行值

特定列上的脚注过滤器

特定数据框列上的 R Apply() 函数

特定列上的角度表过滤器

具有特定列上的子列的数据网格视图