1

我有一个使用 JSON 作为数据源的 Kendo UI 甘特图。修改数据源后,如果我删除图表并重新加载它,数据源将刷新,但可拖动属性将不再起作用。如果我像这样刷新它

var gantt = $("#gantt").data("kendoGantt");
              gantt.dataSource.data = tasksDataSource;
              gantt.refresh();

它不会加载新值。如何在不丢失任何属性的情况下刷新甘特图?

4

2 回答 2

2
 var dataSource = new kendo.data.GanttDataSource({
            data: tasksDataSource
        });
        gantt.setDataSource(dataSource);
        gantt.dataSource.read();
于 2018-10-08T09:51:30.647 回答
1

分配给dataSourceKendo UI 甘特图的字段不会对小部件产生影响。请改用该setDataSource方法。

var gantt = $("#gantt").data("kendoGantt");
gantt.setDataSource(tasksDataSource);

refresh()函数只会使用当前加载的数据项重新渲染甘特图。要强制甘特图从数据源重新加载其数据,请像这样使用和数据源read上的函数。dataSourcedependencies

var gantt = $("#gantt").data("kendoGantt");
gantt.dataSource.read();
gantt.dependencies.read();

这里的 GanttDataSource api 中有一个警告 setDataSource 方法的文档在这里。

于 2015-08-11T06:22:20.870 回答