onBeforeTaskChanged

在用户完成拖拽并释放鼠标按钮后触发,但在任何更改应用之前触发

boolean onBeforeTaskChanged(string|number id,string mode,Task task);
idstring|number任务的ID
modestring拖拽模式("resize"、"progress"、"move"、"ignore")
taskTask任务对象的原始状态副本(拖拽前的状态)
boolean决定默认事件动作是否继续执行(true)或取消(false

Example

gantt.attachEvent("onBeforeTaskChanged", function(id, mode, task){
    // 可以在这里添加自定义逻辑
    return true;
});

Details
  • 当任务在时间轴区域内被拖拽时触发该事件。
  • 通过返回 false 可以阻止该事件,从而取消拖拽操作。
  • 该事件在 onAfterTaskDrag 事件之前触发。

task 参数表示任务的原始(未更改)对象,而通过 gantt.getTask(id) 访问的任务数据则反映了更新后的状态。 这使得可以比较以检测拖拽过程中发生了哪些变化,比如持续时间是增加还是减少,开始日期是向前还是向后移动。
从该事件返回 false 会使甘特图中的任务恢复到原始任务值。

See also
Back to top