【问题标题】:programmatically sorting the jqGrid以编程方式对 jqGrid 进行排序
【发布时间】:2011-08-17 08:11:28
【问题描述】:

我有一个填充了数据的 jqGrid,但我想通过编辑 CSS 来更改它的显示方式。

到目前为止一切顺利,但我正在尝试创建一个下拉列表,当更改时,它将根据所选值对 jqGrid 进行排序。

到底有没有以编程方式实际调用排序函数?

我尝试了以下方法,但什么也没做:

$("#grid").jqGrid('setGridParam',{sortname: 'yearEdition,', sortorder: 'desc'});
$("#grid").trigger("reloadGrid");

确实有办法调用这个事件吗?

【问题讨论】:

    标签: jquery jqgrid


    【解决方案1】:

    你应该使用jqGrid的sortGrid方法:

    对给定的列名进行排序并显示相应的排序图标。相同 (没有排序图标)可以使用 setGridParam({sortname:'myname'}).trigger('reloadGrid')。如果重新加载 设置为 true,网格重新加载当前页面和排序顺序 设置。

    【讨论】:

    • 我接受你的说法,但是这个 "$("#list2").jqGrid().setGridMethod({sortname: 'Year,'}).trigger("reloadGrid"); "根本什么都不做。我说错了吗?
    • @JasonMHirst:$("#list2").jqGrid() 错了!与$("#list2") 相同。可能您想对另一个答案发表评论?请阅读我的回答。
    • 不,这是正确的问题。 3nigma 建议我使用有效的“setGridParam”(尽管是排序箭头)。您建议我使用不起作用的“setGridParam”;事实上,JavaScript 代码中甚至没有这个函数。
    • 实际上@Oleg,我刚刚意识到我需要下载自定义中的“添加”。将这样做并重新检查。
    • @JasonMHirst:我建议使用sortGrid 方法 对jqGrid 进行排序。我包括了 jqGrid documentation 的部分,它描述了为什么应该使用sortGrid 方法以及为什么你使用的另一种方法不能完成全部工作。
    【解决方案2】:

    试试这个

       $("#grid").jqGrid().setGridParam({sortname: 'yearEdition,', sortorder: 
    'desc'}).trigger("reloadGrid");     
    

    这是一个可能对 jqGrid sorting on client side 有帮助的 SO 问题

    【讨论】:

    • 嗨 3nigma,谢谢,是的,“几乎”有效。不知道这是否是 jqGrid 中的错误,但“排序箭头”不反映新的排序(即,它们实际上并没有转到列标题) - 是否有地方可以改变这个或者是它是一个已知的错误?这并不重要,因为列标题将被隐藏,只是想知道这就是全部
    【解决方案3】:

    如 Oleg 所述,以下代码将按 yearEdition 列对网格进行排序,重新加载网格并显示正确的排序图标:

    $("#grid").jqGrid("sortGrid", "yearEdition", true);
    

    如果需要降序排序,则还必须设置 sortorder 网格参数,例如

    $("#grid").jqGrid()
        .setGridParam({sortorder: "desc"})
        .jqGrid("sortGrid", "yearEdition", true);
    

    注意:如API Documentation 中所述,sortGrid 是一种 Add On Grid 方法,只有在选择了正确的下载选项时才可用。

    【讨论】:

    • 正如 Anthony White 在 jqgrid 页面 trirand.com/jqgridwiki/doku.php?id=wiki:methods 的 cmets 中提到的那样,sortGrid 方法似乎有一个未记录的最后一个参数,用于传递排序顺序。它对我有用,而使用 setGridParam 传递它却不行。
    猜你喜欢
    • 1970-01-01
    • 2021-10-02
    • 1970-01-01
    • 1970-01-01
    • 2015-03-25
    • 2019-07-25
    • 2016-09-30
    • 2020-09-04
    相关资源
    最近更新 更多