文章摘要
本文介绍了利用Ajax和JavaScript技术从网络上接收XML数据,并通过JavaScript的DOM技术对其解析,最终将处理结果动态地显示在网页上的方法。文章通过一个包含HTML、JavaScript和Ajax脚本的示例,展示了如何实现对XML数据的异步加载和处理。主要步骤包括:创建一个XML客户端(XMLHttpRequest对象),发送AJAX请求,解析XML数据,提取城市名称、温度和风向信息,并将结果更新到网页上。文章重点突出了如何利用现代Web技术实现高效的异步数据处理和动态网页交互。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<title></title>
<script type=”text/javascript”>
function f1(){
//ajax请求xml信息
//JavaScript的dom技术处理xml
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
if(xhr.readyState==4){
//alert(xhr.responseXML);//object Document 其是xml根节点的父节点对象
var xmldom=xhr.responseXML;
//console.log(xmldom.firstChild);//<weather>
var citys=xmldom.getElementsByTagName(‘city’);
//console.log(citys);// HTMLCollection[city, city, city]
<!DOCTYPE html>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<title></title>
<script type=”text/javascript”>
function f1(){
//ajax请求xml信息
//JavaScript的dom技术处理xml
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
if(xhr.readyState==4){
//alert(xhr.responseXML);//object Document 其是xml根节点的父节点对象
var xmldom=xhr.responseXML;
//console.log(xmldom.firstChild);//<weather>
var citys=xmldom.getElementsByTagName(‘city’);
//console.log(citys);// HTMLCollection[city, city, city]
var s=””;
for(var i=0; i<citys.length; i++){
var name=citys[i].getElementsByTagName(‘name’)[0].firstChild.nodeValue;
var temp=citys[i].getElementsByTagName(‘temp’)[0].firstChild.nodeValue;
var wind=citys[i].getElementsByTagName(‘wind’)[0].firstChild.nodeValue;
s +=”城市:” + name + “--温度:” + temp + “--风向:” + wind + “<br />”;
}
document.getElementById(‘result’).innerHTML=s;
}
}
xhr.open(‘get’,’https://www.jb51.net/article/09.xml’);
xhr.send(null);
}
</script>
</head>
<body>
<h2>利用Ajax+JavaScript实现对xml的接收和处理</h2>
<input type=”button” value=”触发” onclick=”f1()” />
<div id=”result”></div>
</body>
</html>
© 版权声明
文章版权归作者所有,未经允许请勿转载。