我正在使用AnyChart 8.1.0资源甘特图(anychart.ganttResource())来显示和编辑计划数据(汽车预订)。我可以水平编辑/移动预订以更改预订的时间/时段,还可以拖动开始和/或结束日期。但我想将预订从一辆车(排)移到另一辆车(排)-非常类似于将任务从一个人移到另一个人。这是否可能--以及如何实现?
谢谢!Roel
发布于 2018-02-21 20:25:34
我也有同样的问题,据我所知,你可以使用
tree.listen("treeItemMove", function (e) {
// do your stuff
});不幸的是,我认为只有在每行只有一个预订的情况下,这才能起作用。如果您有多个预订,则所有预订都将被移动。到目前为止,我还没有找到一个解决方案来获得一个预订并将其移动到另一行。但我希望它能帮助你朝着正确的方向..
编辑:
我已经联系了Anychart支持人员,询问是否有方法从一个(子)行移动一个句号,并在另一个父行下创建一个新行?
这就是答案:
当前版本的AnyGantt 8.1.0没有将此功能作为开箱即用的功能提供,甚至没有额外的代码。但您可以根据需要修改代码中的dataTree。这提供了对数据的完全控制,但没有鼠标交互。
发布于 2018-02-26 23:02:25
太不幸了。我可以操作这棵树--甚至是一个句号,使用下面的代码删除和添加一个句号。你也可以更新一个句号,代码应该是相似的。
function deletePeriod( pItemId, pPeriodId ){
var item = treeData.search("id", pItemId);
var periods = item.get("periods")
var i = periods.findIndex(function(e){ return e.id == pPeriodId; });
periods.splice(i,1);
item.set('periods', periods);
treeData.addChildAt( item, treeData.indexOfChild(item) );
}和
function addPeriod( pItemId, pPeriodId, start, end){
var period = {
"id": pPeriodId,
"start": start,
"end": end,
"name": "Whatever name you want"
};
var item = treeData.search("id", pItemId);
var periods = item.get("periods");
periods.push(period);
item.set('periods', periods);
treeData.addChildAt( item, treeData.indexOfChild(item) );
}https://stackoverflow.com/questions/48900851
复制相似问题