【原生js甘特图插件MZGantt】如何使用外部弹框添加和修改任务
在MZGantt甘特图插件中,updRows方法为外部弹框与甘特图数据交互提供了高效途径。该方法支持通过弹框提交任务数据,适用于添加、编辑、插入任务等场景,避免行内编辑的局限性。
▮ updRows方法参数详解
参数1:操作类型
add
:在当前行后新增任务。 insert
:在当前行前插入任务。 append
:在末尾追加任务。 addChild
:添加子任务( parentId自动使用选择行)。edit
:修改现有任务数据。
参数2:任务模型数据
需构造包含任务属性的对象,关键字段如下:
var task ={
name:"测试任务1",// 必须字段
isGroup:0,// 是否为父任务(0否1是)
resId:"01",// 担当者ID
plan:[{// 计划时段
start:"2023-12-20",
end:"2023-12-25",
dur:5
}]
};
构造的任务对象中,如果未设置id,则插件会自动生成。
▮ 实现步骤
数据构造阶段
在弹框确认时,需按业务需求组装任务对象。例如设置任务名称、计划时间等。
数据提交阶段
调用updRows提交数据并处理返回结果:
var ret = ganttInstance.updRows("add", task);
if (ret.code ===0) {
// 关闭弹框并刷新视图
} else {
console.error(ret.msg);// 错误处理
}
▮ 注意事项
-
行内编辑无需使用此方法。 -
前置任务 preNodes支持多组关联关系配置。 -
颜色、百分比等可选字段可增强可视化效果。
通过updRows方法,开发者可灵活扩展任务管理功能,结合自定义弹框实现更复杂的业务逻辑。

夜雨聆风
