0

チュートリアルを使用して、ローカルの xml ファイルを読み取ります。しかし、私は何の結果も得られません。私が使用しているコードは次のとおりです。

  <!DOCTYPE html>
<html>
<body>
<h1>W3Schools Internal Note</h1>
<div>
<b>To:</b> <span id="to"></span><br>
<b>From:</b> <span id="from"></span><br>
<b>Message:</b> <span id="message"></span>
</div>

<script>
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.open("GET","test.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;

document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
</script>

</body>
</html>

[xmlファイル[test.xml]]

    <?xml version="1.0"?>
    <movies>
<to>We're the millers</to>
<from>2012</from>
<body>2012</body>
</movies>

誰か私が間違っていることを教えてください。

4

1 に答える 1

0

2 つのファイルを http サーバーにデプロイする必要があります。
セキュリティ上の問題により、Ajax 呼び出しはローカル ファイル システムにアクセスできません。
それらを展開した後、次のようにテストする必要があります。http://localhost/test.html

2 番目の問題は、xml ヘッドを削除する必要があることです。そうしないと、ブラウザーは test.xml を xml ではなくテキストとして扱います。

<movies>
  <to>We're the millers</to>
  <from>2012</from>
  <body>2012</body>
</movies>
于 2013-09-17T03:09:22.717 に答える