JS解析XML的实现代码


Posted in Javascript onNovember 12, 2009

JS代码:

<script language="javascript" type="text/javascript"> 
//需要读取的xml文件 
var uRl = "jsReadXml.xml"; 
var xmlDoc; 
//初始化,给上述定义变量赋值 
// function showcurcity(){ 
if(window.ActiveXObject) 
{ 
xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
xmlDoc.async="false" 
xmlDoc.load(uRl); 
getvalue(); 
} 
else if(document.implementation && document.implementation.createDocument) 
{ 
xmlDoc=document.implementation.createDocument("", "root", null); 
xmlDoc.load(uRl); 
xmlDoc.onload=getvalueff; 
} 
// else { 
// return null; 
// } 
// } 
function getvalue() 
{ 
var nodes=xmlDoc.documentElement.childNodes; 
var now=new Date(); 
for(i=0;i<nodes.length;i++){ 
var value=nodes.item(i).childNodes.item(0).text ; 
alert(nodes.item(i).childNodes.item(1).text); 
alert(nodes.item(i).childNodes.item(2).text); 
} 
} 
function getvalueff(){ 
var cCode=xmlDoc.getElementsByTagName("date"); 
var now = new Date(); 
var nowvalue=now.getFullYear()+'年'+(now.getMonth()+1)+'月'+now.getDate()+'日'; 
for(i=0;i<cCode.length;i++) 
{ 
alert(xmlDoc.getElementsByTagName("imgsrc")[i].childNodes[0].nodeValue); 
alert(xmlDoc.getElementsByTagName("title")[i].childNodes[0].nodeValue); 
alert(xmlDoc.getElementsByTagName("url")[i].childNodes[0].nodeValue); 
} 
} 
</script>

xml代码:
<?xml version="1.0" encoding="UTF-8" ?> 
<root> 
<imags> 
<imgsrc>images/ad-01.jpg</imgsrc> 
<title>胡志明市</title> 
<url>http://torchrelay.beijing2008.cn/cn/journey/hochiminhcity/</url> 
</imags> 
<imags> 
<imgsrc>images/ad-02.jpg</imgsrc> 
<title>香港2</title> 
<url>http://torchrelay.beijing2008.cn/cn/journey/hongkong/</url> 
</imags> 
<imags> 
<imgsrc>images/ad-03.jpg</imgsrc> 
<title>香港3</title> 
<url>http://torchrelay.beijing2008.cn/cn/journey/hongkong/</url> 
</imags> 
<imags> 
<imgsrc>images/ad-04.jpg</imgsrc> 
<title>香港4</title> 
<url>http://torchrelay.beijing2008.cn/cn/journey/hongkong/</url> 
</imags> 
<imags> 
<imgsrc>images/ad-05.jpg</imgsrc> 
<title>香港5</title> 
<url>http://torchrelay.beijing2008.cn/cn/journey/hongkong/</url> 
</imags> 
</root>

下面的文章也可以一同参考下
我看IE与FF------Js读取xml文件
我几天为了实现一个小小的功能(奥运圣火传递路线).Js读取了下xml文件,为了适应IE与FF还是费了一点时间的.
<script language="javascript" type="text/javascript"> 
var xmlDoc; 
function showcurcity() 
{ 
if(window.ActiveXObject) 
{ 
xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
xmlDoc.async="false" 
xmlDoc.load("OlyCity.xml"); 
getvalue(); 
} 
else if(document.implementation && document.implementation.createDocument) 
{ 
xmlDoc=document.implementation.createDocument("", "root", null); 
xmlDoc.load('OlyCity.xml'); 
xmlDoc.onload=getvalueff; 
} 
else 
{ 
return null; 
} 
} 
function getvalue() 
{ 
var nodes=xmlDoc.documentElement.childNodes; 
var now=new Date(); 
for(i=0;i<nodes.length;i++){ 
var value=nodes.item(i).childNodes.item(0).text ; 
if(value==now.toLocaleDateString()) 
{ 
window.document.getElementById('curcity').innerText=nodes.item(i).childNodes.item(1).text; 
window.document.getElementById('curcity').href =nodes.item(i).childNodes.item(2).text; 
} 
} 
} 
function getvalueff(){ 
var cCode=xmlDoc.getElementsByTagName("date"); 
var now = new Date(); 
var nowvalue=now.getFullYear()+'年'+(now.getMonth()+1)+'月'+now.getDate()+'日'; 
for(i=0;i<cCode.length;i++) 
{ 
var value=cCode[i].childNodes[0].nodeValue; 
if(value==nowvalue) 
{ 
window.document.getElementById('curcity').href =xmlDoc.getElementsByTagName("url")[i].childNodes[0].nodeValue;; 
window.document.getElementById('curcity').childNodes[0].nodeValue=xmlDoc.getElementsByTagName("city")[i].childNodes[0].nodeValue; 
} 
} 
} 
setInterval(showcurcity,1000); 
</script>

以下是xml的片断.
<?xml version="1.0" encoding="gb2312" ?> 
<root> 
<citymessage> 
<date>2008年4月29日</date> 
<city>胡志明市</city> 
<url>http://torchrelay.beijing2008.cn/cn/journey/hochiminhcity/</url> 
</citymessage> 
<citymessage> 
<date>2008年4月30日</date> 
<city>香港</city> 
<url>http://torchrelay.beijing2008.cn/cn/journey/hongkong/</url> 
</citymessage> 
</root>
Javascript 相关文章推荐
基本jquery的控制tabs打开的数量的代码
Oct 17 Javascript
node.js中的socket.io的广播消息
Dec 15 Javascript
两种JS实现屏蔽鼠标右键的方法
Aug 20 Javascript
js实现超酷的照片墙展示效果图附源码下载
Oct 08 Javascript
基于Jquery代码实现支持PC端手机端幻灯片代码
Nov 17 Javascript
jQuery实现打开页面渐现效果示例
Jul 27 Javascript
JavaScript仿支付宝6位数字密码输入框
Dec 29 Javascript
微信小程序开发经验总结(推荐)
Jan 11 Javascript
vue页面使用阿里oss上传功能的实例(二)
Aug 09 Javascript
jQuery滑动效果实现方法分析
Sep 05 jQuery
mpvue网易云短信接口实现小程序短信登录的示例代码
Apr 03 Javascript
JavaScript 实现页面滚动动画
Apr 24 Javascript
跨域表单提交状态的变相判断代码
Nov 12 #Javascript
JS 中document.URL 和 windows.location.href 的区别
Nov 11 #Javascript
ASP中进行HTML数据及JS数据编码函数
Nov 11 #Javascript
javascript 日期常用的方法
Nov 11 #Javascript
Jquery在IE7下无法使用 $.ajax解决方法
Nov 11 #Javascript
jQuery 白痴级入门教程
Nov 11 #Javascript
Javascript 解疑
Nov 11 #Javascript
You might like
Laravel框架学习笔记(二)项目实战之模型(Models)
2014/10/15 PHP
开启PHP的伪静态模式
2015/12/31 PHP
PHP利用正则表达式将相对路径转成绝对路径的方法示例
2017/02/28 PHP
从零开始学习jQuery (八) 插播:jQuery实施方案
2011/02/23 Javascript
JS this作用域以及GET传输值过长的问题解决方法
2013/08/06 Javascript
jQuery入门介绍之基础知识
2015/01/13 Javascript
js+html5实现canvas绘制圆形图案的方法
2015/06/05 Javascript
javascript判断网页是关闭还是刷新
2015/09/12 Javascript
JavaScript实现的浮动层框架用法实例分析
2015/10/10 Javascript
JavaScript的函数式编程基础指南
2016/03/19 Javascript
Bootstrap3制作搜索框样式的方法
2016/07/11 Javascript
jQuery实现鼠标悬停3d菜单展开动画效果
2017/01/19 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
Vue0.1的过滤代码如何添加到Vue2.0直接使用
2017/08/23 Javascript
JS数组求和的常用方法总结【5种方法】
2019/01/14 Javascript
node读写Excel操作实例分析
2019/11/06 Javascript
Python读取Excel的方法实例分析
2015/07/11 Python
总结python实现父类调用两种方法的不同
2017/01/15 Python
Django Admin 实现外键过滤的方法
2017/09/29 Python
python使用logging模块发送邮件代码示例
2018/01/18 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
2019/06/05 Python
django框架防止XSS注入的方法分析
2019/06/21 Python
使用python爬取微博数据打造一颗“心”
2019/06/28 Python
TensorFlow Autodiff自动微分详解
2020/07/06 Python
matplotlib设置颜色、标记、线条,让你的图像更加丰富(推荐)
2020/09/25 Python
美国时尚在线:Showpo
2017/09/08 全球购物
SkinCeuticals官网:美国药妆品牌
2018/04/19 全球购物
BookOutlet加拿大:在网上书店购买廉价折扣图书和小说
2018/10/05 全球购物
俄罗斯在线手表和珠宝商店:AllTime
2019/09/28 全球购物
计算机专业毕业生求职信分享
2013/12/24 职场文书
电脑饰品店的创业计划书
2014/01/21 职场文书
旷课检讨书大全
2014/01/21 职场文书
应届毕业生应聘自荐信范文
2014/02/26 职场文书
倡议书的写法
2014/08/30 职场文书
党支部班子“四风”问题自我剖析材料
2014/09/28 职场文书
入党积极分子培养联系人意见
2015/08/12 职场文书