【问题标题】:Order jqgrid by data that is not loaded into the grid?按未加载到网格中的数据订购 jqgrid?
【发布时间】:2010-09-15 17:52:30
【问题描述】:

使用 jqgrid 时,您可以通过以下方式设置 select 语句:

$grid->SelectCommand = $query

但是你不能在这里设置ORDER BY

jqgrid 允许您对任何列上的网格进行排序。

如果我的数据库表有一个名为“成本”的列,并且我希望我的网格按成本排序,但不显示成本。有没有办法做到这一点?

【问题讨论】:

    标签: php jquery jqgrid


    【解决方案1】:

    您可以在您的 html 页面上包含一个附加元素,如复选框或带有选项的选择,允许用户选择排序顺序。要阅读有关用户选择的信息,您可以使用

    var addSortInfo = jQuery("#orderByCost").is(':checked');
    

    var addSortInfo = jQuery("#selectList option:selected").val();
    

    然后您可以使用 jqGrid 的postData 选项将所有请求的附加数据发送到服务器。 postData 参数的值可以是像{mySortInfo: addSortInfo} 这样的对象,其中“mySortInfo”是您将在服务器端看到的附加参数的名称,以及每个请求的sidxpage 和其他标准参数.在 HTTP GET 请求的情况下,来自postData 的数据将附加到服务器 url,而在 HTTP POST 的情况下,数据将被添加到请求正文中。

    您还可以使用postData 中的函数。这种方法的优点您可以阅读How to filter the jqGrid data NOT using the built in search/filter box 了解更多信息。

    【讨论】:

      【解决方案2】:

      在您的数据库选择语句中,您可以根据成本排序选择要返回的数据,或者您可以将成本作为列包含在 jqgrid 中并将其设置为隐藏并按成本列排序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-09
        • 1970-01-01
        • 2016-03-15
        • 1970-01-01
        相关资源
        最近更新 更多