2012-08-14 29 views
0

我想建立基於xml文件的jstree菜單。我的代碼是這樣的:建立基於xml的jstree菜單

$("#div").jstree({ 
     "xml_data" : { 
      "ajax" : { 

      //"url": "jstree.xml" 
       "url": "http://192.168.101.1/xml/jstree.xml"  
       }, 
      "xsl" : "nest" 
       },   
     "plugins" : ["themes", "xml_data", "ui","types"] 

當文件是本地的,如上所述,然後是//,它的工作原理。如果我試圖通過http調用訪問xml文件,它不起作用。有任何想法嗎?我真的很喜歡通過http調用xml文件,因爲文件將一直在更新。

+1

你調試與螢火蟲的Ajax調用?你有沒有檢查服務器的access.log?你能提供工作jsfiddle嗎? (這通常有助於你自己解決:-) – Radek 2012-08-14 22:20:27

+0

@Radek,我不能在工作中使用jsfiddle。你認爲我的語法是準確的嗎?再次,我可以手動訪問該XML文件,當我在URL中輸入它。 – user1471980 2012-08-15 01:38:59

+0

使用firebug並查看ajax調用的工作方式。如果它返回一些東西。如果完成。嘗試使用沒有Ajax的XML數據。看看你的xml語法是否正確。 – Radek 2012-08-15 01:56:54

回答

0

首先確保http://192.168.101.1/xml/jstree.xml實際上返回xml數據。此外,根據Xml data plugin,在url參數變量需要加引號:

$("#div").jstree({ 
     "xml_data" : { 
      "ajax" : { 

      //"url": "jstree.xml" 
       "url": "http://192.168.101.1/xml/jstree.xml"  
       }, 
      "xsl" : "nest" 
       },   
     "plugins" : ["themes", "xml_data", "ui","types"] 
+0

我可以從我的開發環境中打開xml文件。它實際上是在雙引號中,當我運行時,它一直說加載。所以,它沒有找到xml文件。我不知道什麼是錯的。 – user1471980 2012-08-14 20:47:48

+0

它不是引號,它不是xml文件。我只是檢查xml文件是否有效。它適用於我的開發環境爲本地的xml文件。當我做「url」時:「jstree.xml」,它的工作原理。 – user1471980 2012-08-15 14:15:56