Javascript Jstree:异步加载json数据

Javascript Jstree:异步加载json数据,javascript,jquery,json,asynchronous,jstree,Javascript,Jquery,Json,Asynchronous,Jstree,我目前正在尝试建立一个Jstree,使用json格式提供的数据从Web服务器异步加载数据。以前,我将数据存储在html页面本身中,例如通过创建结构。这很有效 然后, 我将数据保存在页面中作为Json字符串,这也很好。之后,我尝试了异步加载,遇到了两个问题: 使用Jstree Jstree 1.0-rc3(如中所示)时,树结构的构建是正确的,但每个文件夹的左侧都会出现两个扩展符号,这看起来很奇怪 然后我尝试使用当前版本的Jstree,但这根本不会生成树,也不会给出错误消息 这是我的html页面:

我目前正在尝试建立一个Jstree,使用json格式提供的数据从Web服务器异步加载数据。以前,我将数据存储在html页面本身中,例如通过创建
    结构。这很有效

    然后,

    我将数据保存在页面中作为Json字符串,这也很好。之后,我尝试了异步加载,遇到了两个问题:

  • 使用Jstree Jstree 1.0-rc3(如中所示)时,树结构的构建是正确的,但每个文件夹的左侧都会出现两个扩展符号,这看起来很奇怪
  • 然后我尝试使用当前版本的Jstree,但这根本不会生成树,也不会给出错误消息
  • 这是我的html页面:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">    
    <html lang="en">    
    <head>    
    <title>Menu test</title>    
    <link rel="stylesheet" href="/static/jsTree/themes/default/style.min.css" />    
    <script src="/static/jquery-1.11.1.js"></script>    
    <!--<script src="/static/jsTree/jstree.js"></script>-->    
    <script src="/static/jsTree/jstree_v3.js"></script> <!-- Current Version -->    
    <script>    
        $(function() {    
            $.ajax({    
            async : true,    
            type : "GET",    
            url : "../test2.json",    
            dataType : "json",        
    
            success : function(json) {    
                createJSTrees(json);    
            },        
    
            error : function(xhr, ajaxOptions, thrownError) {    
                alert(thrownError);    
            }    
            });    
        });        
    
        function createJSTrees(jsonData) {    
            $("#menuTree").jstree({    
            "json_data" : {    
                "data" : jsonData    
            },    
            "plugins" : [ "themes", "json_data", "ui" ]    
            });    
        }        
    </script>    
    </head>    
    <body>    
    Tree:    
    <div id="menuTree" >    
    
    </div>    
    
    </body>    
    </html>
    
    你能帮我吗


    提前非常感谢

    根据这里的前两个示例,您似乎没有正确地将数据传递给
    .jstree()
    方法。谢谢!我根据这里给出的示例修改了代码,并且成功了。我假设,在版本3中,与版本1相比,它们已经改变了为jstree提供参数的方式。
    [ { "data" : "a", "children" :[ {"data":"b", "metadata":{"href":"b"}}, {"data":"c", "metadata":{"href":"c"}} ] } ]