jqGrid sortname
和sortorder
属性实际上并不会导致您的数据集被排序 - 它们只会导致显示向上/向下箭头。
如何让您的数据集在下载时排序?
单击列标题时排序很有效,但我希望将默认排序应用于我们的数据。
更新:当我们点击下一个按钮时,下一个请求会对数据进行排序。
这会导致稍微混乱的UI,其中数据加载列上的向下箭头 - 并且数据未排序 - 但是当您单击下一步时,数据现在已经排序。
似乎我省略了sortname和sortorder,jqGrid仍然显示排序图标 - 很奇怪。
答案 0 :(得分:14)
您可能会给两次相同的参数(复制粘贴程序时非常常见的错误:)没有违规行为。我也是这样做的。)
假设您想按OpeningDate降序排序
..... options ....
sortname: "OpeningDate",
sortorder: "desc", <---- assume you write this line and expect to sort descending
..... some other options ....
sortorder: "asc", <---- and this line may also be there but you may not be noticing it
..... and other options ....
第二个“sortorder”选项会覆盖第一个,您将无法对降序进行排序
答案 1 :(得分:7)
我遇到了同样的问题。加载数据后使用此 :
$("#tableId").jqGrid('sortGrid','colName', false, 'asc');
或
$("#tableId").sortGrid('colName', false, 'asc');
如果布尔值设置为true,则重新加载网格。 最后一个参数可以是'asc'/'desc',具体取决于排序顺序。
答案 2 :(得分:2)
尝试使用
$("#list").jqGrid('setGridParam',{ page: 1 }).trigger("reloadGrid");
或
$("#list").jqGrid('setGridParam',{ rowNum: 10 }).trigger("reloadGrid");
(将10替换为您定义为rowNum参数的值)。如果它无效,请在您的问题中发布您的代码。
答案 3 :(得分:2)
你可能犯了和我一样的错误,那就是把我的客户端脚本从一个使用“sortName”而不是“sortname”的旧例子开始
答案 4 :(得分:1)
问题是(我相信)在请求第一个数据集时读取参数sortName和sidx
答案 5 :(得分:0)
/ Cheesy Answer Alert
为什么不在第一次加载时隐藏已排序的图标?第一次有人进行分类,取消隐藏,事情按预期工作。听起来好像是在用户选择要排序的列之前加载未排序的意图。