1

我尝试使用 JIT 的 SpaceTree,我真的需要一些帮助。问题是当尝试从另一个数组加载树时。

json.php

<?php
$temp = array(
    'id' => "node02",
    'name' => "roey",
    'data' => '',
    'children' => json_encode(array(
        'id' => "node13",
        'name' => "Some Node",
        'data' => '',
        'children' => '',

    )),
);
echo json_encode($temp);

我的 spacetree.js:

....
function init(){
$.getJSON('json.php', function(json){
    var json = json;
....
st.loadJSON(json);

我收到的 JSON 符合预期,但脚本没有加载它。

有没有人看到问题并可以帮助我解决这个问题?

4

2 回答 2

0
  1. 从您的代码中删除“var json = json”。变量 json 已经在该函数中声明。
  2. 如果“st.loadJSON(json);” 不在函数(json){你的代码}中。变量 json 是函数的局部变量,只能在它声明的函数中被引用。
于 2012-11-11T17:26:39.453 回答
-1

我遇到了同样的问题,JIT SpaceTree 使用数组数组作为子键,php 数组应该是这样的

`<?php
$temp = array(
'id' => "node02",
'name' => "roey",
'data' => '',
'children' => array(array(
    'id' => "node13",
    'name' => "SomeNode",
    'data' => '',
    'children' =>array(),
),array(
    'id' => "node14",
    'name' => "SomeNode",
    'data' => '',
    'children' =>array(),
),
)
);
echo json_encode($temp);
?>`

希望这有助于并节省其他 4 人的时间 :)

于 2013-01-08T01:27:09.717 回答