如果我在remapColumns的完成事件中使用了columnChooser,则对列进行排序没有问题。但是当我搬家时
remapColumnsbeforeReques t具有新的烫发信息,请参见下文:

beforeRequest: function(){
    perm =   {0:2,1:0,2:1,3:3,4:4,5:5,6:6,7:7,8:8,9:9,10:10};
    myGrid.jqGrid("remapColumns", perm,  true);
}


列已正确重新排序,并且我可以搜索列值,但是列排序功能刚刚被禁用。点击事件似乎不起作用。有人可以帮忙吗?我如何找回它?
真的很感激。

非常感谢!

最佳答案

the answer中,您可以找到如何使用remapColumns的示例,希望对您有所帮助。在演示中,我在remapColumns内部使用了loadComplete。我不明白为什么您要更改对服务器的每个请求的列顺序。

更新:The modified demo没有您描述的效果。原因是在旧的演示中,用空(remapColumns)置换参数和[]调用方法remapColumns在这种情况下工作不正确。因此,我对myColumnsState.permutation.length > 0进行了其他测试。

更新2:Free jqGrid除了remapColumnsByName之外,还提供了方法remapColumnsremapColumnsByName的第一个参数是列名称的数组,应在网格上。可以包含或不包含列"subgrid""cb""rn"。与remapColumnsByName的用法相比,更容易理解remapColumns的用法,尤其是在用户可以更改列顺序的情况下(例如columnChooser)。强烈建议使用remapColumnsByName代替remapColumns

09-12 08:13