2017-09-12 33 views
0

これは難しいことに驚いていますが、私はそれを行う方法が一つもありません。 は基本的に私は含まれているディレクトリがあります。ローカルのxmlファイルをJavascriptの文字列に読み込みます

--index.html 
--script.js 
--file.xml 

を、私は構文解析のためのJS文字列にfile.xmlの内容を読みたいです。 私が見つけた唯一の方法は、ブラウザでデフォルトで無効になっている同期xmlhttpオブジェクトを使用することでした。 jsの文字列にファイルを読み込む別の(できれば簡単な)方法がありますか?

+0

async Ajaxを使用する必要があります。シンプルさが必要な場合は、jQueryを使用することをお勧めします。これは素晴らしいロード機能を備えています。 http://api.jquery.com/load/ –

答えて

0

私はパーティーに少し遅れているかもしれませんが、これは解決策を探して髪を切り取っている人を助けるためです。

まず、サーバーからHTMLファイルを実行していない場合は、ブラウザでCORSを許可する必要があります。第二に、私は、ほとんどの人がこれらの種類のスレッドで参照するコードスニペットが、ローカルのXMLファイルをロードするためには動作しないことを発見しました。この(公式ドキュメントから取った例を)試してみてください:

ローカルファイルを参照している場合(第一引数)はxhr.openでは無視されているメソッド、および非同期(第三引数)はデフォルトでtrueです

var xhr = new XMLHttpRequest(); 
xhr.open('GET', 'file.xml', true); 

xhr.timeout = 2000; // time in milliseconds 

xhr.onload = function() { 
    // Request finished. Do processing here. 
    var xmlDoc = this.responseXML; // <- Here's your XML file 
}; 

xhr.ontimeout = function (e) { 
    // XMLHttpRequest timed out. Do something here. 
}; 

xhr.send(null); 
、あなたは本当にあなたのファイルを指し、その結果を解析する必要があります! =)

幸運!

関連する問題