Javascript Ajax:不从XML文件检索数据
我正在学习ajax并尝试在页面上显示一些数据: 这是我从Javascript Ajax:不从XML文件检索数据,javascript,html,ajax,xml,Javascript,Html,Ajax,Xml,我正在学习ajax并尝试在页面上显示一些数据: 这是我从xml文件检索数据的方法: function MakeXMLHTTPCall() { var xmlHttpObj; xmlHttpObj = CreateXmlHttpRequestObject(); if (xmlHttpObj) { xmlHttpObj.open("GET", "http:// " + location.host + "/XmlHttpExample1/DataFile.xml
xml
文件检索数据的方法:
function MakeXMLHTTPCall() {
var xmlHttpObj;
xmlHttpObj = CreateXmlHttpRequestObject();
if (xmlHttpObj) {
xmlHttpObj.open("GET", "http:// " + location.host + "/XmlHttpExample1/DataFile.xml", true);
xmlHttpObj.onreadystatechange = function () {
if (xmlHttpObj.readyState == READYSTATE_COMPLETE) {
document.getElementById("divResults").innerHTML = xmlHttpObj.responseText;
}
}
xmlHttpObj.send(null);
}
}
<?xml version="1.0" encoding="utf-8" ?>
<Customers>
<Customer>
<Firstname>John</Firstname>
<Lastname>Doe</Lastname>
<email>john.do@test.com</email>
</Customer>
<Customer>
<Firstname>Alan</Firstname>
<Lastname>Anonymous</Lastname>
<email>anon@ymous.com</email>
</Customer>
<Customer>
<Firstname>Marvin</Firstname>
<Lastname>Martian</Lastname>
<email>marvin@mars.com</email>
</Customer>
</Customers>
这是一个html
片段,定义了将保存数据的div
元素:
<form id="form1" runat="server" method="post">
<div>
<input type="button" onclick="MakeXMLHTTPCall();" value="Text XMLHTTP Call" />
<br />
<br />
<div id="divResults">{no results}</div>
</div>
</form>
这是我的xml
文件:
function MakeXMLHTTPCall() {
var xmlHttpObj;
xmlHttpObj = CreateXmlHttpRequestObject();
if (xmlHttpObj) {
xmlHttpObj.open("GET", "http:// " + location.host + "/XmlHttpExample1/DataFile.xml", true);
xmlHttpObj.onreadystatechange = function () {
if (xmlHttpObj.readyState == READYSTATE_COMPLETE) {
document.getElementById("divResults").innerHTML = xmlHttpObj.responseText;
}
}
xmlHttpObj.send(null);
}
}
<?xml version="1.0" encoding="utf-8" ?>
<Customers>
<Customer>
<Firstname>John</Firstname>
<Lastname>Doe</Lastname>
<email>john.do@test.com</email>
</Customer>
<Customer>
<Firstname>Alan</Firstname>
<Lastname>Anonymous</Lastname>
<email>anon@ymous.com</email>
</Customer>
<Customer>
<Firstname>Marvin</Firstname>
<Lastname>Martian</Lastname>
<email>marvin@mars.com</email>
</Customer>
</Customers>
约翰
雌鹿
厕所。do@test.com
艾伦
匿名的
anon@ymous.com
马文
火星人
marvin@mars.com
我调试了代码<代码>XMLHttpRequest对象已创建。问题是,数据不显示
我做错了什么?有什么建议吗?听起来你需要做一些调试。在这种设置中,可能会出现多种错误。因此,请尝试完成这些步骤,并确定您的代码实际可以工作多少。您将在步骤3中找到该错误:)
我希望你不介意我给你解释了我是如何发现这个bug的。不知道如何调试代码是非常令人沮丧的。检查浏览器中的控制台是否有错误。此外,您还可以使用类似于检查请求的工具来确保正确检索XML文件。实际上,我对其进行了调试,发现在调用该文件的行中失败,但没有注意到额外的空间:)。谢谢