4

私はこの質問をもう一度します。XMLファイルに基づいてjsTreeをロードする次のコードがあります。

$("#div").jstree({
    "xml_data" : {
        "ajax" : {
            "url": "http://192.168.101.1/xml/jstree.xml"
        },
        "xsl" : "nest"
    },
    "plugins" : ["themes", "xml_data", "ui","types"]

ファイルが私のスクリプトと同じサーバー上にある場合、それは機能します。私のツリーが読み込まれます。

"url": "jstree.xml"  

しかし、私がこれを行うとき:

"url": "http://192.168.101.1/xml/jstree.xml" 

私はそのページに無限の負荷をかけ続けています。これは同じXMLファイルであり、ブラウザに入力すると、そのXMLに手動でアクセスできます。

jsTreeでこの問題を見た人はいますか?回避策はありますか?

4

2 に答える 2

0

サーバーサイドスクリプトを作成し、jquery内でスクリプトファイルを呼び出すことで問題を解決します。それはうまくいきます。

于 2012-08-22T19:13:22.933 に答える
0

クロスドメインの制限であることは間違いありません。XMLクロスドメインを取得することはできません。したがって、回避策は、たとえばサーバー側のプロキシソリューションです。

<?php readfile($_GET['url']) ?>

詳細はこちら

Or use yahoo pipes to convert your remote xml data into jsonp. Looking at the jstree docs it seems you can pass a jquery ajax object which hopefully could be one that's setup to do jsonp. Or manually get a jsonp response and pass it in to jstree as a json object.

于 2012-08-25T21:50:19.110 に答える