【问题标题】:At Vis.js, timeline, refresh display on change data在 Vis.js,时间轴,刷新显示更改数据
【发布时间】:2017-11-01 15:33:20
【问题描述】:

我在此文本框中设置了一个 html 表单,我更改了标题、内容、开始时间和结束时间。通过单击“确定”按钮更改数据项。 如何刷新时间线?

onlclick-Button 的代码

    var onClickEditOkay = function () {
    if (selItemNr != null){
        var start = new Date(dummyDate);
        var sh = tbStart.value.split(":");
        start.setHours(parseInt(sh[0]));
        start.setMinutes(parseInt(sh[1]));
        var end = new Date(dummyDate);
        sh = tbEnd.value.split(":");
        end.setHours(parseInt(sh[0]));
        end.setMinutes(parseInt(sh[1]));
        timeline.itemsData._data[selItemNr].start = start;
        timeline.itemsData._data[selItemNr].end = end;
        timeline.itemsData._data[selItemNr].title = tbTitle.value;
        timeline.itemsData._data[selItemNr].content = tbContent.value;      
        timeline.redraw();
    }
};  

item的值也正确设置了开始和结束,但时间线显示没有任何变化。

问候马里奥

【问题讨论】:

    标签: javascript timeline vis.js


    【解决方案1】:

    我找到了解决办法:

    javascrtipt 类将 _data.id 存储到 cuItemId 在 OnClick 函数中,我调用了timeline.itemdData.update()。

    var onClickEditOkay = function () {
        if (selItemNr != null){
            var start = new Date(dummyDate);
            var sh = tbStart.value.split(":");
            start.setHours(parseInt(sh[0]));
            start.setMinutes(parseInt(sh[1]));
            var end = new Date(dummyDate);
            sh = tbEnd.value.split(":");
            end.setHours(parseInt(sh[0]));
            end.setMinutes(parseInt(sh[1]));
            timeline.itemsData.update({id: cuItemId, start: start,end: end, title: tbTitle.value, content: tbContent.value});
        }
    };      
    

    效果很好。 关于马里奥

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-06
      相关资源
      最近更新 更多