我使用dhtmlx进行图表甘特图,我成功地保存了数据库中的任务,问题是当我添加新任务时图表中没有变化, 例如,如果我添加一个新任务,持续4天,它只显示一个单元格而不是四个单元格,也适用于其他属性。
这里是添加新任务的代码:
<script type="text/javascript">
gantt.init("gantt_here");
gantt.attachEvent("onLightboxSave", function(id, task, is_new){
mnth = ("0" + (task.start_date.getMonth()+1)).slice(-2),
day = ("0" + task.start_date.getDate()).slice(-2);
mnth = ("0" + (task.end_date.getMonth()+1)).slice(-2),
day = ("0" + task.end_date.getDate()).slice(-2);
$.post("Control",{id:task.id,duration:task.duration,text:task.text,start_date:[ day,mnth, task.start_date.getFullYear() ].join("-").toString()},function(data){
alert(data);
}) ;
gantt.hideLightbox();
});
</script>
答案 0 :(得分:0)
尝试从onLightboxSave处理程序http://docs.dhtmlx.com/gantt/api__gantt_onlightboxsave_event.html
返回' true '如果您返回“错误”或“未定义”(如您的情况),表单将保持打开状态,并且表单值不会应用于客户端
返回'true'将保存值并关闭表单,因此您无需手动调用hideLightbox
gantt.attachEvent("onLightboxSave", function(id, task, is_new){
var dateToStr = gantt.date.date_to_str("%d-%m-%Y");
$.post("Control",{
id:task.id,
duration:task.duration,
text:task.text,
start_date:dateToStr(task.start_date)
},function(data){
alert(data);
}) ;
return true;
});