Javascript 如何编写AJAX调用以获取XML文件?
我需要写一个带有“获取航班信息”按钮的网页。当用户单击此按钮时,编写一个AJAX调用以获取您在问题1中编写的XML文件,将XML解析为Javascript对象,然后在web页面上完全按照 跟随: 这是到目前为止我的代码。我是个新手,所以请大家放松点 XML:Javascript 如何编写AJAX调用以获取XML文件?,javascript,ajax,xml,Javascript,Ajax,Xml,我需要写一个带有“获取航班信息”按钮的网页。当用户单击此按钮时,编写一个AJAX调用以获取您在问题1中编写的XML文件,将XML解析为Javascript对象,然后在web页面上完全按照 跟随: 这是到目前为止我的代码。我是个新手,所以请大家放松点 XML: 2011年10月2日 弗吉尼亚州1429 悉尼 凯恩斯 1855年35号登机门 维珍澳大利亚 HTML: <html> <style> table,th,td { border : 1px solid bl
2011年10月2日
弗吉尼亚州1429
悉尼
凯恩斯
1855年35号登机门
维珍澳大利亚
HTML:
<html>
<style>
table,th,td {
border : 1px solid black;
border-collapse: collapse;
}
th,td {
padding: 5px;
}
</style>
<body>
<button type="button" onclick="loadDoc()">Get flight
information</button>
<br><br>
<table id="demo"></table>
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "Question1.xml", true);
xhttp.send();
}
function myFunction(xml) {
var i;
var xmlDoc = xml.responseXML;
var table="<tr><th>Depart</th><th>Arrive</th></tr>";
var x = xmlDoc.getElementsByTagName("CD");
for (i = 0; i <x.length; i++) {
table += "<tr><td>" +
x[i].getElementsByTagName("Depart")[0].childNodes[0].nodeValue +
"</td><td>" +
x[i].getElementsByTagName("Arrive")[0].childNodes[0].nodeValue +
"</td><td>" +
x[i].getElementsByTagName("Date")[0].childNodes[0].nodeValue +
"</td></tr>";
}
document.getElementById("demo").innerHTML = table;
}
</script>
</body>
</html>
表,th,td{
边框:1px纯黑;
边界塌陷:塌陷;
}
th,td{
填充物:5px;
}
逃走
信息
函数loadDoc(){
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
我的职能(本);
}
};
open(“GET”,“Question1.xml”,true);
xhttp.send();
}
函数myFunction(xml){
var i;
var xmlDoc=xml.responseXML;
var table=“离开到达”;
var x=xmlDoc.getElementsByTagName(“CD”);
对于(i=0;i
表,th,td{
边框:1px纯黑;
边界塌陷:塌陷;
}
th,td{
填充物:5px;
}
逃走
信息
函数loadDoc(){
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
我的职能(本);
}
};
open(“GET”,“Question1.xml”,true);
xhttp.send();
}
函数myFunction(xml){
var i;
var xmlDoc=xml.responseXML;
var表=`departarrival`;
var x=xmlDoc.getElementsByTagName(“CD”);
对于(i=0;i
表,th,td{
边框:1px纯黑;
边界塌陷:塌陷;
}
th,td{
填充物:5px;
}
逃走
信息
函数loadDoc(){
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
我的职能(本);
}
};
open(“GET”,“Question1.xml”,true);
xhttp.send();
}
函数myFunction(xml){
var i;
var xmlDoc=xml.responseXML;
var表=`departarrival`;
var x=xmlDoc.getElementsByTagName(“CD”);
对于(i=0;i
$(函数(){
var数据='弗吉尼亚州1429年10月2日悉尼凯恩斯盖特35于1855年维珍澳大利亚'
//解析givnxml
var xmlDoc1=$.parseXML(数据);
变量$xml1=$(xmlDoc1);
//查找人员标签
var$flightInfo=$xml1.find(“flightInfo”);
$flightInfo.each(函数(){
变量日期=$(this).find('Date').text(),
Depart=$(this).find('Depart').text(),
arrival=$(this.find('arrival').text();
$(“#数据”)。追加(“”+日期+”-“+出发+”-“+到达+” );
});
});
$(函数(){
var数据='弗吉尼亚州1429年10月2日悉尼凯恩斯盖特35于1855年维珍澳大利亚'
//解析givnxml
var xmlDoc1=$.parseXML(数据);
变量$xml1=$(xmlDoc1);
//查找人员标签
var$flightInfo=$xml1.find(“flightInfo”);
$flightInfo.each(函数(){
变量日期=$(this).find('Date').text(),
Depart=$(this).find('Depart').text(),
arrival=$(this.find('arrival').text();
$(“#数据”)。追加(“”+日期+”-“+出发+”-“+到达+” );
});
});
您不能以这种方式从文件系统加载文件,如果浏览器允许您这样做,则会非常不安全。您可能希望使用像nodeJS这样的web服务器?您不能以这种方式从文件系统加载文件,如果浏览器允许您这样做,则会非常不安全。您可能希望使用像nodeJS这样的web服务器?
<html>
<style>
table,th,td {
border : 1px solid black;
border-collapse: collapse;
}
th,td {
padding: 5px;
}
</style>
<body>
<button type="button" onclick="loadDoc()">Get flight
information</button>
<br><br>
<table id="demo"></table>
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "Question1.xml", true);
xhttp.send();
}
function myFunction(xml) {
var i;
var xmlDoc = xml.responseXML;
var table="<tr><th>Depart</th><th>Arrive</th></tr>";
var x = xmlDoc.getElementsByTagName("CD");
for (i = 0; i <x.length; i++) {
table += "<tr><td>" +
x[i].getElementsByTagName("Depart")[0].childNodes[0].nodeValue +
"</td><td>" +
x[i].getElementsByTagName("Arrive")[0].childNodes[0].nodeValue +
"</td><td>" +
x[i].getElementsByTagName("Date")[0].childNodes[0].nodeValue +
"</td></tr>";
}
document.getElementById("demo").innerHTML = table;
}
</script>
</body>
</html>
<html>
<style>
table,th,td {
border : 1px solid black;
border-collapse: collapse;
}
th,td {
padding: 5px;
}
</style>
<body>
<button type="button" onclick="loadDoc()">Get flight
information</button>
<br><br>
<table id="demo"></table>
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "Question1.xml", true);
xhttp.send();
}
function myFunction(xml) {
var i;
var xmlDoc = xml.responseXML;
var table=`<tr><th>Depart</th><th>Arrive</th></tr>`;
var x = xmlDoc.getElementsByTagName("CD");
for (i = 0; i <x.length; i++) {
table += `<tr><td>` +
x[i].getElementsByTagName("Depart")[0].childNodes[0].nodeValue +
`</td><td>` +
x[i].getElementsByTagName("Arrive")[0].childNodes[0].nodeValue +
`</td><td>` +
x[i].getElementsByTagName("Date")[0].childNodes[0].nodeValue +
`</td></tr>`;
}
document.getElementById("demo").innerHTML = table;
}
</script>
</body>
</html>