【问题标题】:How can I add multi-column sorting to jqgrid?如何将多列排序添加到 jqgrid?
【发布时间】:2010-09-03 01:44:55
【问题描述】:

我可以在 jqgrid 中添加单列排序,没问题。 jqgrid如何添加多列排序?

即先按第1列排序,再按第2列排序,最终排序顺序为:第2列第1列

【问题讨论】:

    标签: jquery sorting jqgrid


    【解决方案1】:

    当前版本的 jqGrid 不支持多列排序。

    http://www.trirand.com/blog/ 上,您可以“您希望在 jqGrid 中看到哪个功能?”投票给答案

    • 导出为 PDF
    • 冻结列
    • 按多列排序
    • 按多列分组

    一般来说,您可以尝试通过在onSortCol 事件处理程序中针对setGridParam 修改jqGrid 的sortnamesortorder 参数来自己实现多排序。例如,对于具有firstNamelastName 之类的列索引的两列,第一列的排序仅意味着将sortname 作为“firstName”,将sortorder 作为“asc”。如果您想首先按firstNamelastName 作为第二个条件进行排序,您可以将sortname 设置为“firstName asc, lastName”,将sortorder 设置为“asc”。您的服务器程序应该能够解释这一点,但如果您只是构造 ORDER BY 类似 ORDER BY $sidx $sord 的东西(请参阅 http://www.trirand.com/jqgridwiki/doku.php?id=wiki:first_grid#php_and_mysql_example_file),它将起作用。

    【讨论】:

    • 太糟糕了,此时按多列排序是第 3 位:(
    【解决方案2】:

    一个简单的解决方法是将所有字段列为逗号分隔的字符串 ex。

    sortname: 'customer_id, store_id, start_date'
    

    在服务器端继续解析字符串并制作您的查询。

    【讨论】:

      猜你喜欢
      • 2023-03-30
      • 2023-04-09
      • 2012-07-28
      • 1970-01-01
      • 2013-08-16
      • 1970-01-01
      • 2019-10-24
      • 2021-01-07
      • 2013-11-20
      相关资源
      最近更新 更多