繁体   English   中英

SlickGrid:重新排序后排序不起作用

[英]SlickGrid: sorting after reordering doesn't work

在SlickGrid中,您可以启用行重新排序(拖放)。 参见http://mleibman.github.io/SlickGrid/examples/example9-row-reordering.html

我的问题是,一旦我对一行进行重新排序(例如,将第3行放在第1行上方),就无法再对条目进行排序。 如果某列名为“日期”,而我单击该列,则不会发生任何事情。 在另一方面,如果我被列手动,然后重新排序行排序,它的工作原理。

我不介意“按列排序”会破坏我的人工订单。 我只想保留重新排序后按列排序的选项。

任何提示表示赞赏。

(我使用SlickGrid是因为有一个很好的fork,它具有粘性的行/列。在其他地方没有找到此功能,因此这是我唯一的选择)

手动对网格重新排序后,将执行预订moveRowsPlugin.onMoveRows的函数。 此函数正在调用grid.setData(data)以将重新排序的行更新到网格上。 调用grid.setData(data)会覆盖DataView并直接在网格上设置数据。 因此,对DataView的更新(例如排序)不再反映在网格上。

若要解决此更改, grid.setData(data)在已预订moveRowsPlugin.onMoveRows的函数(嵌入式JavaScript的第364行dataView.setItems(data)中将grid.setData(data)更改为dataView.setItems(data) )。 我还建议您清除排序字段,以便删除排序指示器。

//Set updated data in DataView
dataView.setItems(data);

//Clear sort columns
grid.setSortColumns([]);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM