2017-06-28 11 views
0

私のコードは次のとおりです。xmlファイルを開くには、JavaScriptを使用して

function loadDoc() { 
    var xhttp = new XMLHttpRequest(); 
    xhttp.open("GET", "results.xml", false); 
    xhttp.send(); 
    myFunction(xhttp);//(this); 
} 
function myFunction(xml) 
{ 
    var xmlDoc = xml.responseXML; 
    var parser = new DOMParser(); 
    var xmlDoc = parser.parseFromString(xml.responseText, "application/xml"); 
    var x;  
    var txt = ""; 
    var y; 
    y = xmlDoc.getElementsByTagName("entryresult");//.childNodes[0]; 
    x = y[1].getElementsByTagName("title")[0].childNodes[0].nodeValue; 
    alert(x); 
} 

私は、CakePHPを使用しています。私のcustom.jsはwebroot/jsにあります。私のXMLファイルresults.xmlは同じフォルダにあります。

  • GETのXHR http://localhost/cakephp-3-4-3/result/results.xml [HTTP/1.1 404見つかりません422ms]
  • XML解析エラー:不一致tag.Expected

    しかし、いつもはメッセージが表示されました:。

  • 例外TypeError:Y [1]は未定義である[詳細]

これらのエラーは、コンソール(F12)からのものです。

私のコードは、アラートの前の行以上に進むことができないため、これを実行します。

私は他のフォルダからファイルを読み込もうとしていると思います。

+1

あなたの最初の問題は、あなたが404エラーを取得している場合、それはあなたのresults.xmlファイルを見つけることができません。 'GET XHR http://localhost/cakephp-3-4-3/result/results.xml [HTTP/1.1 404 Not Found 422ms]' これは、results.xmlファイルが公開されていないこと、または( '/ cakephp-3-4-3/result/results.xml') – AlienHoboken

+0

変更されました:xhttp.open(" GET "、" results.xml "、false); to:xhttp.open( "GET"、 "../webroot/files/p1/results.xml"、false);今度は次の手順を続けます。 –

答えて

0

私の問題は、行を変更することで解決した。xhttp.open("GET", "results.xml", false); へ:xhttp.open("GET", "results.xml", false);

関連する問題