【问题标题】:Gantt View JSON data甘特图查看 JSON 数据
【发布时间】:2012-07-12 14:12:17
【问题描述】:

我正在尝试使用 php 和 jquery 将(通过 ajax)数据重新加载到甘特图中。我可以用我的初始负载数据绘制甘特图,没有任何问题。我有一个 ajax 保存调用来更新图表数据,我想在成功保存后重新绘制甘特图。

我可以加载部分数据,即左侧的标题数据,但不能加载日期,我认为它的格式不正确?我正在使用来自 github 的这个甘特图插件:https://github.com/thegrubbsian/jquery.ganttView

下面是他们使用的数据示例?这是json数据吗?

我不确定?如何格式化我的输出以镜像和使用这些数据。

var ganttData = [
{
    id: 1, name: "Feature 1", series: [
        { name: "Planned", start: new Date(2010,00,01), end: new Date(2010,00,03) },
        { name: "Actual", start: new Date(2010,00,02), end: new Date(2010,00,05), color: "#f0f0f0" }
    ]
}, 
{
    id: 2, name: "Feature 2", series: [
        { name: "Planned", start: new Date(2010,00,05), end: new Date(2010,00,20) },
        { name: "Actual", start: new Date(2010,00,06), end: new Date(2010,00,17), color: "#f0f0f0" },
        { name: "Projected", start: new Date(2010,00,06), end: new Date(2010,00,17), color: "#e0e0e0" }
    ]
}, 

我的代码如下所示:

[{"id":0,"name":"task number 20","series":[{"name":"Bob","start":"new Date(2012,2,19)","end":"new Date(2012,6,11)"}]},{"id":1,"name":"another new posts","series":[{"name":"Bill","start":"new Date(2012,5,22)","end":"new Date(2012,6,27)"}]},here

【问题讨论】:

    标签: json jquery charts gantt-chart


    【解决方案1】:

    从 json 字符串“调用”函数(包括构造函数)是不合法的。 JSON 不是你可以传递给eval 函数的任何东西:http://www.json.org/

    您应该在 javascript 代码中进行从字符串到日期的转换。

    你可以发送

    [{..."start":"Thu Jul 12 2012 16:20:17 GMT+0200 (CEST)"...}]
    

    在你的 js 代码中,在 json 解析之后,遍历对象来做

    myobj.start = new Date(myobj.start);
    

    【讨论】:

    • 您好,感谢您的回复,现在说得通了,我没有意识到它正在调用带有日期的函数!你知道json解析发生在哪里吗,我不确定我是否遵循jquery.ganttView.js如何解析数据。
    • jQuery.getJSON 获取并解析 json。您可以更改在opts.data = data; 之前提供的回调。但是我不知道这个插件,我只看了10秒,所以可能还有其他问题。
    • 我会试一试,然后把我的结果发回这里。我真的很感谢你的帮助。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多