2012-04-13 3 views
3

Я пытаюсь построить дерево из XML-файла с помощью jstree. Я следил за документацией и выглядел так, как будто она не работает. Вот мой код:jstree не создает дерево

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

ответ

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.

0

Там нет такого атрибута для сценария под названием «язык» (там может быть, но это не рекомендуется).

Поместите код в скрипт теги, как приведенный ниже код и повторите попытку

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

не работает, пустая страница –

+0

Добавить это в качестве проверки вменяемости в вашем скрипте:. $ (Документ) .ready (функция() { оповещения ($ jstree._themes); }); Моя читает что-то вроде: http: //.../.../jstree/themes/. Это необходимо для правильной загрузки библиотеки. – MMeah

+0

Еще одна проверка на работоспособность: alert ($(). Jquery); Опять же, мой читает что-то вроде 1.6.2 – MMeah

1

Похоже контейнер (# demo2) отсутствует. Попробуйте добавить <div id='demo2'></div> под тело тег.

Также убедитесь, что файл jstree.js загружен правильно.

+0

мой браузер застрял в говорящих Loading –

0

Укажите относительный путь вместо "url": "books.xml". Замените его текущим путем, как «url»: «../Content/Xml/books.xml». Это может сработать.

С уважением, Amrutha

Смежные вопросы