支持几乎所有浏览器的js载入xml文件

本文介绍了一种使用JavaScript解析本地XML文件(route.xml)的方法,并通过不同浏览器的兼容性处理展示了如何读取XML文件的内容。该示例重点讲解了如何利用DOM操作获取XML中的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.route.xml文件内容

<?xml version="1.0" encoding="GBK"?>

<root>
<route id="1111">
<id>111</id>
<name>四川</name>
<path>www.baidu.com/hehe.html</path>
</route>
</root>

2.test.html代码
<html>
<body>
<script>
try
{
// 用于 IE 的代码:
if (window.ActiveXObject)
{
var xmlobject =new ActiveXObject("Microsoft.XMLDOM");
xmlobject.async="false";
xmlobject.load("route.xml");
}
// 用于 Mozilla, Firefox, Opera, 等浏览器的代码:
else
{
//下2句为直接载入xml字符串
//var parser=new DOMParser(); 
//var xmlobject =parser.parseFromString(xmlstring,"text/xml");

//读取xml文件的方法,支持firfox,chrome浏览器 
var oXmlHttp = new XMLHttpRequest() ;
oXmlHttp.open( "GET", "route.xml", false ) ;
oXmlHttp.send(null) ; 
var xmlobject=oXmlHttp.responseXML;

//另一种读取xml文件的方法,在google chrome中不支持
//var xmlobject = document.implementation.createDocument("", "", null);
//xmlobject.async=false; 
//xmlobject.load("route.xml");
}
}
catch (e)
{
alert('对不起,您的浏览器暂不支持本操作,请使用IE6/IE7/遨游/firfox/Opera/chrome浏览器打开此页

面');
}
// get the XML root item
var root=xmlobject.getElementsByTagName('root')[0];
var routes=root.getElementsByTagName('route');
for (var i = 0 ; i < routes.length ; i++) {
var route=routes;
alert("id="+route.getAttribute("id"));
var name = route.getElementsByTagName("name")[0].firstChild.nodeValue;
alert(name);
}
</script>


</body>
</html>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值