【发布时间】:2013-03-25 09:50:21
【问题描述】:
似乎我的 javascript 没有接收到我的 php 发送回一个 xml 文档。 php代码:
$domtree = new DOMDocument('1.0', 'UTF-8');
/* append it to the document created */
$xmlRoot = $domtree->appendChild($domtree->createElement("root"));
foreach (glob('./img/photos/*.*') as $filename) {
//echo $filename;
$xmlRoot->appendChild($domtree->createElement("image",$filename));
}
/* get the xml printed */
echo $domtree->saveXML();
上面代码的输出如下:
<?xml version="1.0" encoding="UTF-8"?>
<root><image>./img/photos/2012-02-26 17.02.12.jpg</image>
<image>./img/photos/2012-03-09 08.21.48.jpg</image>
<image>./img/photos/2012-07-21 14.09.39.jpg</image>
<image>./img/photos/2012-07-25 15.25.17.jpg</image>
<image>./img/photos/2012-08-04 17.54.38.jpg</image>
<image>./img/photos/2012-08-04 23.36.30.jpg</image>
<image>./img/photos/2012-08-06 06.08.43.jpg</image>
<image>./img/photos/2012-08-07 20.57.34.jpg</image>
<image>./img/photos/2012-08-09 20.40.11.jpg</image>
<image>./img/photos/2012-08-25 20.54.05.jpg</image>
<image>./img/photos/2012-09-07 11.19.50.jpg</image>
<image>./img/photos/2012-09-08 15.53.27.jpg</image>
<image>./img/photos/2013-01-30 19.19.16.jpg</image>
<image>./img/photos/2013-01-31 09.48.39.jpg</image></root>
使用 AJAX 调用它,当我调用 AJAXRequest.responseXML 时,我会返回 null。
编辑:AJAX 请求代码:
function requestImages()
{
request=new XMLHttpRequest();
request.open("GET", "getPhotos.php");
request.onreadystatechange=showPhotos;
request.send();
}
function showPhotos()
{
if ((request.readyState == 4)) {
doc=request.responseXML; // This returns null
}
}
【问题讨论】:
-
什么是 AJAX 代码?也可以直接调用它写回什么是 php 的输出,这样我们就可以看到 Javascript 试图解析什么。
-
查看答案here
-
您的 PHP 脚本是否返回了正确的
Content-Type标头?请参阅stackoverflow.com/a/3272572/156755 了解更多信息
标签: php javascript xml ajax