微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AJAX XML 实例

AJAXXML实例

PreviousPage

NextPage

AJAX可用来与XML文件进行交互式通信。

AJAXXML实例

下面的例子将演示网页如何使用AJAX来读取来自XML文件的信息:

获得CD信息

亲自试一下源代码

实例解释-loadXMLDoc()函数

用户点击上面的获得CD信息这个按钮,就会执行loadXMLDoc()函数

loadXMLDoc()函数创建XMLHttpRequest对象,添加当服务器响应就绪时执行的函数,并将请求发送到服务器。

当服务器响应就绪时,会构建一个HTML表格,从XML文件提取节点(元素),最后使用已经填充了XML数据的HTML表格来更新txtCDInfo占位符:

functionloadXMLDoc(url)

{

varxmlhttp;

vartxt,xx,x,i;

if(window.XMLHttpRequest)

{//codeforIE7+,Firefox,Chrome,Opera,Safari

xmlhttp=newXMLHttpRequest();

}

else

{//codeforIE6,IE5

xmlhttp=newActiveXObject("Microsoft.XMLHTTP");

}

xmlhttp.onreadystatechange=function()

{

if(xmlhttp.readyState==4&&xmlhttp.status==200)

{

txt="<tableborder='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();

}

AJAX服务器页面

上面这个例子中使用的服务器页面实际上是一个XML文件,名为"cd_catalog.xml"

来自:http://www.w3school.com.cn

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐