好吧,我连续两天都无法解决这个问题。这个例子在这里:http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_xml2 http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_xml2在 w3schools 网站上运行得很好。但是当我将代码复制并粘贴到记事本++中时。这不起作用。我已经下载了 XML 文件。我读到 AJAX 不支持使用本地文件。我不明白这个??我的任务是让学校使用本地 XML 文件。当 AJAX 不支持使用本地文件时,我如何使用本地 XML 文件和 AJAX。我从助教那里得到的唯一答复是我应该使用 Firefox...但是不...它不适用于:Chrome、Internet Explorer、Mozila、Opera...基本上没有...
我知道这里已经问过类似的问题,但我就是无法使其发挥作用。如果有人知道如何修改这个给定的代码以在本地工作,我将不胜感激..提前感谢..
<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc(url) {
var xmlhttp;
var txt, x, xx, i;
if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
txt = "<table border='1'><tr><th>Title</th><th>Artist</th></tr>";
x = xmlhttp.responseXML.documentElement.getElementsByTagName("CD");
for (i = 0; i < x.length; i++) {
txt = txt + "<tr>";
xx = x[i].getElementsByTagName("TITLE"); {
try {
txt = txt + "<td>" + xx[0].firstChild.nodeValue + "</td>";
} catch (er) {
txt = txt + "<td> </td>";
}
}
xx = x[i].getElementsByTagName("ARTIST"); {
try {
txt = txt + "<td>" + xx[0].firstChild.nodeValue + "</td>";
} catch (er) {
txt = txt + "<td> </td>";
}
}
txt = txt + "</tr>";
}
txt = txt + "</table>";
document.getElementById('txtCDInfo').innerHTML = txt;
}
}
xmlhttp.open("GET", url, true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id="txtCDInfo">
<button onclick="loadXMLDoc('cd_catalog.xml')">Get CD info</button>
</div>
</body>
</html>
您无法使用本地文件。本地文件系统是沙盒的,因此,例如,您无法双击电子邮件附件中的 HTML 文档、在浏览器中打开它并将您的私人文件上传到发件人的服务器。
如果您想在本地测试 Ajax,请安装本地 Web 服务器并通过它进行测试。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)