JStree 未加载

JStree not loading

我有以下用于加载 jstree 的代码。但是 jstree 永远不会加载。

$("#div").jstree({    
        'json_data': {    
            'ajax': {    
                 'url': ajaxUrl,    
                  'type': 'GET',    
                  'data': function(data) {    
                   },
            }
        }
    });

我做错了什么?

您没有显示完整代码或源 json 数据的外观 like.But 这里是一个使用 ajax 源内容加载 jstree 的示例。

$(function () {
$.ajaxSetup({cache:false});
$("#jsonDemo").jstree({         
    "plugins" : [ 
        "themes","json_data", "ui"
    ],

    // This example uses JSON as it is most common
    "json_data" : { 
        "data" : [{"attr":{"id":"1204","isLast":"false","name":"A Node"},
                      "data":"A Node",
                     "metadata":{"id":"1204","isLast":"false","name":"A Node"},
                      "state":"closed"},
                  {"attr":{"id":"1205","isLast":"true","name":"B Node"},
                    "data":"B Node",
                    "metadata":{"id":"1205","isLast":"true","name":"B Node"},
                    "state":"close"}
                 ],
        "ajax" : { "url" : "./_demo/_tree_json.json",
                         "data": function (n){
                            return{
                                //set the url request param,multi param separate by ,
                                    "parentId" : n.attr ? n.attr("id") : "null",
                                    "name":  n.attr ? n.attr("name") : "null"
                            };
                    }
         }
    },  
   "themes" : {
         "theme" : "classic", //apple,default,if in ie6 recommented you use classic
         "dots" : true,
         "icons" : true
   }

})
.bind("select_node.jstree",function(event,data){  
        if("true" == data.rslt.obj.attr("isLast")){ 
             //get the attrs data you set in the attrs field;
            alert(data.rslt.obj.attr("id")+data.rslt.obj.attr("isLast"));
            //you can do something here...
        }else{
            //toggle node refer to the id setted in the metadata
            //get the metadata id field value : jQuery.data(data.rslt.obj[0], "id");
            //The metadata id value should be different to each other !!!
            //otherwise, the toggle_node will work incorrect !!!
            $("#jsonDemo").jstree("toggle_node","#"+jQuery.data(data.rslt.obj[0], "id"));
        }    
})
// prevent the default event of the link 
.delegate("a", "click", function (event, data) { event.preventDefault(); })
;
});