在我的项目中,我有一个用户可以拖放jqGrid列的场景。当同一用户再次访问该站点时,我们必须显示jqGrid列顺序,以便他在之前的访问中进行了修改。因此,jqGrid列的顺序应该是用户特定的。谁能帮助我如何实现这一目标? (我需要返回jQgrid列的类型和格式)。
答案 0 :(得分:2)
您需要的行为实现并不是很简单。我建议您按照the answer和this one中所述的localStorage
保存更改的列顺序。首先使用“列选择器”按钮尝试the old demo。
要保存更改的列顺序,您需要注册jqGrid在拖放列标题后应调用的回调。可以使用update
回调sortable
选项定义为对象(而不是true
)。所以代码就像
var $grid = $("#list"); // your grid
...
$grid.jqGrid({
... // all other option of jqGrid
sortable: {
update: function (perm) {
saveColumnState.call($grid, perm); // save permutation
}
}
});
函数saveColumnState
在上面引用的答案中有所描述,也包含在上面引用的demo中。