【问题标题】:Sort Grid Columns by "column_order" in JQWidgets在 JQWidgets 中按“column_order”对网格列进行排序
【发布时间】:2014-01-07 06:49:14
【问题描述】:

是否可以使用JQWidgets(v2.8.2) 动态地按column order 对网格列进行排序?

【问题讨论】:

  • 请详细说明并提供您当前的代码。按照目前的情况,这不会被视为质量问题。
  • 我正在通过$(gridId).jqxGrid({source: dataAdapter,......,columns: colData.columns});生成一个网格@默认列属性来自数据库,它是从一个json文件初始化的。现在,在这个网格的“个性化网格”选项上,我应该能够更改列的顺序(完成)。但是新的列顺序在$(gridId).jqxGrid('refresh');刷新后并没有生效

标签: jquery jquery-ui jqxwidgets


【解决方案1】:

您可以使用“sortby”方法。

 $('#jqxgrid').jqxGrid('sortby', 'firstname', 'asc');

例如:http://jsfiddle.net/jqwidgets/7yWdu/。希望对你有帮助。

【讨论】:

  • 我认为column propertycolumn value(cell value) 之间存在差异。 column order 是一个列属性。 $('#jqxgrid').jqxGrid('sortby', 'firstname', 'asc'); 我猜这是按'firstname' 在此列中的列值对行进行排序。
  • 列顺序为“asc”。它可以是 "desc" 或 null。
【解决方案2】:

在生成网格之前

    `$(gridId).jqxGrid({
        source: dataAdapter,
        .............,
        ............,
        ............,
        columns:colData.columns  //column property from database
    });`

我用columnOrdersortColumnByOrder(colData.columns, 'columnOrder');对列进行了排序,原来的方法如下所示

function sortColumnByOrder(array, key) {
return array.sort(function(a, b) {
    var x = a[key];
    var y = b[key];
    return ((x < y) ? -1 : ((x > y) ? 1 : 0));
});
}

而且它工作正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-03
    • 1970-01-01
    • 1970-01-01
    • 2021-05-30
    • 1970-01-01
    • 2015-10-04
    • 1970-01-01
    相关资源
    最近更新 更多