我使用JavaScript(客戶端)試圖從具有XML內容(服務器端)PHP頁面得到的responseXML發送的XMLHttpRequest我不能。當html頁面和php頁面處於同一級別時(本地主機),我沒有任何問題。當問題不存在時,問題就會開始 - responseXML始終爲空。responseXML的使用AJAX(XMLHttpRequest的)
奇怪的是,我得到這個結果使用不同的瀏覽器(鉻,火狐,歌劇)除IE8這是給我正確的responseText(而不是responseXML),但只有我「允許阻止的內容」後。
另一件事。我使用phonegap將這個html頁面(請求頁面)轉換爲一個Android應用程序(這是我的主要目標),當我在我的平板電腦上測試應用程序時,我得到了相同的結果(空響應)。下面是客戶端代碼:
<html>
<head>
<title> T_d test </title>
<script language="javascript">
var infoPage="http://172.25.10.215/list2.php";
// 172.25.10.215 the IP address of the server
function test()
{
var xht = new XMLHttpRequest();
xht.open("GET",infoPage,true);
xht.send();
xht.onreadystatechange=function() {
if (xht.readyState==4) {
alert(""+xht.responseXML);
document.getElementById("id1").innerHTML="The result is : "+xht.responseText;
}
}
}
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
btn
<input name="btn" type="button" id="btn" onClick="test();" value="Submit" />
</form>
<label id="id1"></label>
</body>
</html>
這裏是服務器頁面代碼:
<?php
header('Content-Type: text/xml');
?>
<root>
<file>
<filename>Test.txt</filename>
<fileCreatingDate>15-7-2013</fileCreatingDate>
<fileModifyDate>20-7-2013</fileModifyDate>
<filesize>10002345</filesize>
<filetype> Text</filetype>
</file>
<file>
<filename>Test2.txt</filename>
<fileCreatingDate>19-7-2013</fileCreatingDate>
<fileModifyDate>20-8-2013</fileModifyDate>
<filesize>3002345</filesize>
<filetype> Text</filetype>
</file>
</root>
這裏是我開始使用IE8響應文本:
結果是:Test.txt的15-7-2013 20-7-2013 10002345 Text Test2.txt 19-7-2013 20-8-2013 3002345 Text
Could y你請幫忙? 感謝
都是在同一臺服務器上的文件? –
您可能還需要檢查'xht.status'是'200' – Ian