0

ブラザーズ!!:)私は ajax の初心者で、応答 XML からメモ値を取得する際に問題があります。私がやろうとしていることは (簡単だと思います): ajax を使用して、XML ファイルを PHP ページに要求します。XML を取得しましたが、メモの値を取得できません。

私の単純なXML:

<items>
  <item>
    <name>..</name>
    <address>..</address>
    <owner>..</owner>
  </item>
</items>

私のPHP(その応答):

<?php
    header('Content-Type: text/xml');
    $doc = new DOMDocument();
    $doc->formatOutput=true;
    $doc->load('data.xml');
    echo $doc->saveXML();
?>

私のリクエスト機能:

  function getUserParameters(){
  var xmlhttp = new XMLHttpRequest();
  xmlhttp.onreadystatechange=function Return(){
        if (xmlhttp.readyState==4 && xmlhttp.status==200){
            var result = xmlhttp.responseXML;
            var name= result.getElementsByTagName("name");
            var val = name[0].childNodes[0].nodeValue;
            alert(val);
        }
  }
xmlhttp.open("GET","request.php",true);
xmlhttp.send();
}

すべて正常に動作しますが、alert(val)を実行しようとすると、文字列が null になります。何も表示されません!誰か私が間違っていることを教えてもらえますか?
お時間いただきありがとうございます。

4

1 に答える 1

0

まず、PHP 応答ページを直接呼び出してみてください。XML コンテンツが表示されるはずです。そうでない場合は、data.xml の代わりに XML ファイルの完全なパス (URL ではない) を入力します。

ただし、これは理想的な方法ではありません。PHP 応答ページを使用して必要なデータを解析し、JSON に入れ、Ajax を使用して値を取得することをお勧めします。詳細については、このページを参照してください: http://api.jquery.com/jQuery.getJSON/

于 2012-12-06T20:34:17.667 に答える