reorder_grid_columns

允许通过拖放来重新排序 grid 列

boolean reorder_grid_columns;

Example

gantt.config.reorder_grid_columns = true;
gantt.init("gantt_here");


Default value:

false

Related samples

Details

此功能适用于 grid 视图和资源视图。

它引入了两个 CSS 类:

  • .gantt_column_drag_marker - 标记拖动列将被放置的位置
  • .gantt_grid_head_cell_dragged - 应用于当前被拖动的列

事件

grid 的内部事件允许你控制列的拖动和放置:onBeforeColumnDragStartonAfterColumnReorderonColumnDragMove。例如:

"onBeforeColumnDragStart"/"onColumnDragMove"

gantt.attachEvent("onGanttReady", function(){
    var grid = gantt.$ui.getView("grid");
    grid.attachEvent("onBeforeColumnDragStart", function(column, index){
        // 自定义代码
        return true; // 返回 false 可阻止拖动此列
    });
    grid.attachEvent("onColumnDragMove",function(
        dragColumn, targetColumn, dragIndex, targetIndex){
        // 自定义代码
        return true; // 返回 false 可阻止重新排序到此位置
    });
});

以及

"onBeforeColumnDragStart"/"onAfterColumnReorder"

gantt.attachEvent("onGanttReady", function(){
    var grid = gantt.$ui.getView("grid");
    grid.attachEvent("onBeforeColumnDragStart", function(column, index){
        if(column.draggedColumn.name == "text"){
            return false;
        }
        return true;
    });
    grid.attachEvent("onAfterColumnReorder", function(object){
        // 重新排序后访问列配置
        console.log(object)
    });
});
Back to top