组合阵列移动
Combine array movements
当拖放列改变它们的顺序时,jqgrid 会触发 jqGridRemapColumns
给你一个移动的数组。示例 [0,1,5,2,3,4]
最后一个元素被移动到第三个位置。我想要做的是在会话之间保存这些转换,这样我就可以将列移回它们使用 remapColumns
时的顺序,它采用转换数组。
问题是在使用转换调用 remapColumns 时,然后在顶部应用了更多转换。由于 jqGridRemapColumns
不 return 具有先前转换的数组只有新的转换。所以保存的数组被覆盖,只保存最新的转换。
我如何组合两个数组,如 [0,1,5,2,3,4]
(将最后一个元素移到第三个)和 [0,2,3,4,1,5]
(将第二个元素移到倒数第二个)以获得 [0,5,2,3,1,4]
?
我建议您保存列的名称,而不是列的索引。看一个例子 the demo from 。它应该可以解决列的多次重新排序的所有问题。
所以我最后做的是对第二个数组进行排序,同时跟踪排序动作。然后将这些动作以相反的顺序应用到第一个数组。这工作得很好,我只需要将数组列表保存到数据库中。
当拖放列改变它们的顺序时,jqgrid 会触发 jqGridRemapColumns
给你一个移动的数组。示例 [0,1,5,2,3,4]
最后一个元素被移动到第三个位置。我想要做的是在会话之间保存这些转换,这样我就可以将列移回它们使用 remapColumns
时的顺序,它采用转换数组。
问题是在使用转换调用 remapColumns 时,然后在顶部应用了更多转换。由于 jqGridRemapColumns
不 return 具有先前转换的数组只有新的转换。所以保存的数组被覆盖,只保存最新的转换。
我如何组合两个数组,如 [0,1,5,2,3,4]
(将最后一个元素移到第三个)和 [0,2,3,4,1,5]
(将第二个元素移到倒数第二个)以获得 [0,5,2,3,1,4]
?
我建议您保存列的名称,而不是列的索引。看一个例子 the demo from
所以我最后做的是对第二个数组进行排序,同时跟踪排序动作。然后将这些动作以相反的顺序应用到第一个数组。这工作得很好,我只需要将数组列表保存到数据库中。