跳到主要内容

onTaskDrag

Description

当用户拖动任务时触发

onTaskDrag: (id: string | number, mode: string, task: Task, original: Task, e: Event) => void;

Parameters

  • id - (required) string | number - 任务ID
  • mode - (required) string - 拖动模式("resize"、"progress"、"move"、"ignore")
  • task - (required) Task - 当前(被拖动的)任务对象
  • original - (required) Task - 原始(初始)任务对象
  • e - (required) Event - 原生事件对象

Example

gantt.attachEvent("onTaskDrag", function(id, mode, task, original){
//这里可以写任何自定义逻辑
});

Details

每当用户在时间轴区域拖动鼠标以移动、调整任务大小或更新任务进度时,都会触发此事件。拖动类型通过第二个参数 mode 指示。所有可能的拖动模式值可以在 drag_mode 文件中找到。

总结流程如下:

  1. 用户开始拖动操作。
  2. dhtmlxGantt 根据新位置重新计算任务日期。
  3. dhtmlxGantt 触发 onTaskDrag 事件。
  4. dhtmlxGantt 更新甘特图中任务的显示。