Javascript Jstree:异步加载json数据
我目前正在尝试建立一个Jstree,使用json格式提供的数据从Web服务器异步加载数据。以前,我将数据存储在html页面本身中,例如通过创建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页面:
结构。这很有效
然后,
我将数据保存在页面中作为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"}} ] } ]