我正在尝试使用jstree从xml文件构建树。我按照文档看起来似乎无法正常工作。这是我的代码:
<html>
<head>
<title>Demo</title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="C:\Users\jstree\jstree_pre1.0_fix_1\jquery.jstree.js"></script>
<Script Language="JavaScript">
$(function () {
$("#demo2").jstree({
"xml_data" : {
"ajax" : {
"url" : "books.xml"
},
"xsl" : "nest"
},
"plugins" : [ "themes", "xml_data" ]
});
});
</Script>
</head>
<body>
</body>
答案 0 :(得分:2)
XML的格式不是jsTree可以包含它的。
http://www.jstree.com/documentation/xml_data
支持两种类型的XML结构 - 平面和嵌套:
<!-- FLAT -->
<root>
<item id="root_1" parent_id="0" state="closed">
<content>
<name><![CDATA[Node 1]]></name>
</content>
</item>
<item id="node_2" parent_id="root_1">
<content>
<name><![CDATA[Node 2]]></name>
</content>
</item>
</root>
<!-- NESTED -->
<root>
<item id="xml_1">
<content><name><![CDATA[Root node 1]]></name></content>
<item id="xml_2">
<content><name><![CDATA[Child node 1]]></name></content>
</item>
</item>
</root>
另一种方法是将XML文档放入并将其转换为JSON,然后将其转换为有效的JSON或HTML数据格式。
答案 1 :(得分:1)
看起来容器(#demo2)丢失了。尝试在 body 标记下添加<div id='demo2'></div>
。
还要确保正确加载jstree.js文件。
答案 2 :(得分:0)
脚本中没有这样的属性称为“语言”(可能已经存在,但已被弃用)。
将代码放在脚本标记中,如下面的代码,然后重试
<script type="text/javascript">
//Your Code Here
</script>
答案 3 :(得分:0)
提供相对路径而不是“url”:“books.xml”。将其替换为当前路径,如“url”:“../ Content / Xml / books.xml”。 这可能有用。
此致 Amrutha