Json JsTree:如何将root的父级作为#交付?

Json JsTree:如何将root的父级作为#交付?,json,nested,set,jstree,Json,Nested,Set,Jstree,我有一个由Mike Hillyer给出的类别嵌套集。我使用的是JSTree,我遵循了SO中给出的建议:我按照建议创建了一个平面格式,但是,没有解释如何使用#的父级传递根。我的根目录有一个“null”的父目录,因此,进程轮只会不停地旋转,我得到一个错误: 未捕获的TypeError:无法读取null的属性“toString” 还建议将根父级设置为#,但也不解释如何执行此操作。我已经尝试过使用AJAX方法,但是,由于树和页面必须一起加载,因此我无法使其有效工作。如何使JsTree工作 这就是我所拥有

我有一个由Mike Hillyer给出的类别嵌套集。我使用的是JSTree,我遵循了SO中给出的建议:我按照建议创建了一个平面格式,但是,没有解释如何使用#的父级传递根。我的根目录有一个“null”的父目录,因此,进程轮只会不停地旋转,我得到一个错误:

未捕获的TypeError:无法读取null的属性“toString”

还建议将根父级设置为#,但也不解释如何执行此操作。我已经尝试过使用AJAX方法,但是,由于树和页面必须一起加载,因此我无法使其有效工作。如何使JsTree工作

这就是我所拥有的一切:

控制器:

 public function jsTree(){   // THIS COMES OUT OF A LARAVEL MODEL. 
   $nodes = $this->category->orderByDepth();
   return view ('categories.jsTree',compact('nodes'));
}
我的观点如下:

 var jsNodes = <?php echo json_encode($nodes); ?>

         $(function () {
             $('#jstree').jstree({
                 "core": {
                     "themes": {
                         "variant": "large"
                     },
                    data:jsNodes
                 },
                 "plugins": ["checkbox"]
             });
         });
      });

编辑:我再次尝试了Ajax路线,正如所给出的那样,我再次得到了无休止的纺车,并显示了相同的错误消息

我不确定你是否找到了答案,但我实现它的方式只是将你的第一个结果更改为:0:{id:1,文本:“Root”,父:'#'}不确定你是否找到了答案,但我实现它的方式只是将你的第一个结果更改为:0:{id:1,文本:“Root”,父:'#'}
0: {id: 1, text: "Root", parent: null}
1: {id: 22, text: "Materials", parent: "Root"}
2: {id: 42, text: "Roofing", parent: "Materials"}
3: {id: 48, text: "Hardware", parent: "Materials"}
4: {id: 43, text: "Services", parent: "Root"}