diff --git a/assets/controllers/elements/datatables/datatables_controller.js b/assets/controllers/elements/datatables/datatables_controller.js index 9ac234831..98b9cf29d 100644 --- a/assets/controllers/elements/datatables/datatables_controller.js +++ b/assets/controllers/elements/datatables/datatables_controller.js @@ -113,8 +113,16 @@ export default class extends Controller { return null; } + //The saved order index is visual (post-reorder). If colReorder state + //exists, map it back to the original column index so the server sorts + //the correct column. colReorder[visualIndex] == originalIndex. + let columnIndex = order[0]; + if (saved_state.colReorder) { + columnIndex = saved_state.colReorder[columnIndex]; + } + return { - column: order[0], + column: columnIndex, dir: order[1] } });