2012-04-13 4 views
3

Ich versuche, einen Baum aus einer XML-Datei mit jstree zu bauen. Ich folgte der Dokumentation und sah aus, als würde es nicht funktionieren. Hier ist mein Code:jstree baut den Baum nicht

<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> 

Antwort

2

Die XML ist nicht so formatiert, dass jsTree sie enthalten kann.

http://www.jstree.com/documentation/xml_data

zwei Arten von XML-Strukturen unterstützt werden - flach und verschachtelte:

<!-- 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> 

Eine Alternative ist das XML-Dokument in und wandelt es in JSON zu bringen, dann verwandeln sie in eine gültige JSON oder HTML-Datenformat.

0

Es gibt kein solches Attribut für Skript namens „Sprache“ (es gewesen sein, aber es ist veraltet).

Platz Code in Script-Tags wie der Code unten und versuchen Sie es erneut

<script type="text/javascript"> 
    //Your Code Here 
</script> 
+0

nicht, leere Seite –

+0

arbeiten Fügen Sie diese als Plausibilitätsprüfung in Ihrem Skript. $ (Document) .ready (function() { alert ($ jstree._themes); }); Meine liest etwas wie: http: //.../.../jstree/themes/. Dies stellt sicher, dass die Bibliothek sogar korrekt geladen wird. – MMeah

+0

Eine andere Gesundheitscheck ist: alert ($(). Jquery); Noch einmal, liest meine etwas wie 1.6.2 – MMeah

1

Sieht aus wie Container (# demo2) fehlt. Versuchen Sie, <div id='demo2'></div> unter Körper Tag hinzuzufügen.

Stellen Sie außerdem sicher, dass die Datei jstree.js korrekt geladen wird.

+0

mein Browser fest auf sagen Laden –

0

Geben Sie einen relativen Pfad anstelle von "url": "books.xml" ein. Ersetzen Sie es durch den aktuellen Pfad wie "url": "../Content/Xml/books.xml". Das könnte funktionieren.

Grüße, Amrutha