【问题标题】:unable to retreve Nodevalue from xml response in ajax无法从 ajax 中的 xml 响应中检索节点值
【发布时间】:2012-12-06 19:35:50
【问题描述】:

兄弟们!! :) 我是 ajax 的初学者,我在从响应 XML 中检索注释值时遇到问题。我想做的是(我认为很简单):使用 ajax 我向 PHP 页面请求 XML 文件。我得到了 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) 时,字符串为空。什么都没有出现!谁能告诉我我做错了什么?
花费你很多时间。

【问题讨论】:

    标签: php xml ajax request


    【解决方案1】:

    首先尝试直接调用 PHP 响应页面,您应该会看到 XML 内容。如果不是,请放置 XML 文件的完整路径(不是 URL)而不是 data.xml。

    虽然这不是理想的方式。您最好使用 PHP 响应页面来解析您需要将其放入 JSON 的数据,然后使用 Ajax 检索值。有关更多信息,请参阅此页面:http://api.jquery.com/jQuery.getJSON/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-22
      • 1970-01-01
      • 1970-01-01
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 2013-09-03
      • 1970-01-01
      相关资源
      最近更新 更多