2

情况

我正在使用这里的 jQuery 甘特图插件并将其与我拥有的 PHP 站点集成。在设置演示方面没有问题;但是,当我尝试为插件提供一些我自己的数据时,它会抛出以下错误:

TypeError: e is undefined

现在,我相信由于 JSON 对象对插件不熟悉而引发了上述错误,但是我似乎无法正确打包它。

我的 JSON 数据

我的 json

演示 JSON 数据

演示 JSON

现在,您可以看到除了一些差异之外,我已经非常接近标记了。接下来是我用来生成它的 PHP 代码。

$aryOutput = array('source' => array());
if($aryTasks) {
    foreach($aryTasks as $aryTask) {
            
                            
        $aryOutput['source'][] =  array(
            'name' => $aryTask['task_stage'],
            'desc' => $aryTask['task_title'],
            'values' => array(array(
            'to' => '/Date('.time($aryTask['task_projected_end_timestamp']).')',
            'from' => '/Date('.time($aryTask['task_projected_start_timestamp']).')',
            'desc' => $aryTask['task_description'],
            'label' => $aryTask['task_description']
        ))
        );
    }            
}
$strJSON = json_encode($aryOutput, JSON_UNESCAPED_SLASHES);

请任何人提供一些智慧的珍珠来解决这个问题。在旁注中,从另一个问题中,我看到课程必须是甘特图。这不是问题,我可以让插件使用不同的数据集。

谢谢

编辑

我注意到日期字段上有一个额外的斜线有一点不同。编辑代码添加后,仍然出现错误

4

1 回答 1

1

根据需要检查完整交付的 JSON 结构。在上面的例子中,很可能是这样的输出:

source : { source : { ... } }

这会导致与插件混淆,因为它是意外数据。

于 2013-02-23T03:30:19.090 回答