js读取xml数据

JavaScript操作XML文件(1)读取 /***************************************Author:Java619*Time:2006-11-07**************************************/假设我们现在要读取下面的 info.xml 文件 xml version="1.0" encoding="gb2312"?>root>  data id="1">     阅读详情
xml数据:cities.xml
<?xml version="1.0" encoding="GB2312"?>
<china>
	<province name="河北">
		<city>石家庄</city>
		<city>保定</city>
		<city>廊坊</city>
		<city>唐山</city>
		<city>沧州</city>
		<city>邢台</city>
		<city>张家口</city>
	</province>
	<province name="黑龙江">
		<city>哈尔滨</city>
		<city>鸡西</city>
		<city>鹤岗</city>
		<city>大庆</city>
		<city>齐齐哈尔</city>
		<city>双鸭山</city>
		<city>佳木斯</city>
	</province>
	<province name="吉林">
		<city>长春 </city>
		<city>吉林市</city>
		<city>白城</city>
		<city>四平</city>
		<city>白山</city>
		<city>通话</city>
		<city>松源</city>
	</province>
	<province name="湖南">
		<city>长沙</city>
		<city>岳阳</city>
		<city>汨罗</city>
		<city>益阳</city>
		<city>常德</city>
		<city>张家界</city>
		<city>永州</city>
	</province>
	<province name="辽宁">
		<city>沈阳</city>
		<city>大连</city>
		<city>鞍山</city>
		<city>抚顺</city>
		<city>辽阳</city>
		<city>营口</city>
		<city>盘锦</city>
	</province>
</china>


js代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>二级下拉框</title>
<script type="text/javascript">
	/**
	 * 加载xml文档
	 * @param {Object} file
	 */
	function parseXML(file)
	{
		var xmlDoc;
		try{
			//IE浏览器,创建一个空的xml文档
			xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		}catch(e){
			try{
				//firefox,mazilla,opera,etc.,创建一个空的xml文档
				xmlDoc = document.implementation.createDocument("","",null);
			}catch(e){
				alert("xml解析失败!!!");
			}
		}
		//关闭异步加载
		xmlDoc.async="false";
		//加载xml文件
		xmlDoc.load(file);
		return xmlDoc;
	}
	
	window.onload = function(){
		//调用函数加载xml
		var xmlfile = parseXML("cities.xml");
		//得到select 节点
		var provinces = document.getElementById("provinces");
		 //从xml中得到所有的province节点
		var xmlProvinces = xmlfile.getElementsByTagName("province");
		/**两次的值竟然不一样**/
		alert("原来:"+xmlProvinces.length);
		alert("后来:"+xmlProvinces.length);
		//先清空所有的列表
		for(var i =0 ;i<xmlProvinces.length; i++){
			//拼装成option
			var option = document.createElement("option");
			//给option设置属性
			option.setAttribute("value",xmlProvinces[i].getAttribute("name"));
			var value = document.createTextNode(xmlProvinces[i].getAttribute("name")); 
			//将值添加到option
			option.appendChild(value);
			//将option添加到select
			provinces.appendChild(option);
		}
		
		//得到cities的select节点
		var cities = document.getElementById("cities");
		provinces.onchange= function(){
			//删除城市select节点原来有的内容,从后往前山
			for(var i=cities.options.length;i>0;i--){
				cities.remove(i);
			}
			var xmlprovinces = xmlfile.getElementsByTagName("province");
			for(var i=0;i<xmlprovinces.length;i++){
				if(xmlprovinces[i].getAttribute("name")== provinces.value){
					var xmlcities = xmlprovinces[i].getElementsByTagName("city");
					for(var j = 0 ;j<xmlcities.length;j++){
						//组装option
						var option = document.createElement("option");
						var optionText = document.createTextNode(xmlcities[j].firstChild.nodeValue);
						option.appendChild(optionText);
						cities.appendChild(option);
						
					}
				}
			}
		}
		
	}
	
</script>
</head>
<body>
	<select name="provinces" id="provinces" >
		<option value="">------请选择省份------</option>
	</select>
	
	<select name="cities" id="cities">
		<option value="">------请选择城市------</option>
	</select>
</body>
</html>

有一个小问题:有的浏览器不兼容

比如 

/**两次的值竟然不一样**/
		alert("原来:"+xmlProvinces.length);
		alert("后来:"+xmlProvinces.length);

两次打印的值不一样,在第40行, 没想通为什么,高手请赐教!!!

js读取xml文件并获取文件内容 立即下载

相关推荐

FlightStream实战:如何用面元法在笔记本电脑上完成无人机气动分析(附NASA案例)

本文详细介绍了如何利用FlightStream面元法在笔记本电脑上高效完成无人机气动分析,包括其核心技术优势、NASA D8案例实战解析及高效工作流建立。FlightStream作为快速CFD分析工具,显著提升了早期设计阶段的迭代速度,适用于概念设计验证和多气动构型比较。

weixin_28363123的博客 257

JavaScript 读取XML 数据

首先:xml文件(tree.xml)内容如下:              山东省      _blank      省份                    威海市        _blank        城市                            烟台市        _blank        城市                 

技术资料收集站 330

资源描述框架RDF及Turtle

文章目录1. RDF1.1 简介1.2 格式1.3 RDF的要求2. Turtle2.1 语法2.1.1 简单三元组2.1.2 Turtle中的命名空间2.1.3 Base URI2.1.4 谓语列表2.1.5 宾语列表2.1.6 空白节点(bNodes)2.1.7 数据类型2.1.8 Class membership2.1.9 空URI2.1.10 集合 1. RDF 1.1 简介 RDF(Resource Description Framework)语义网的标准数据模型,是一个用于描述 Web 上的资

doublewhite233的博客 2494

JS读取XML数据

XMl数据格式如下: 刘亦菲 MingXing/LiuYiFei.htm 7A9D4B 蔡依林 MingXing/CaiYiLin.htm FD0000 张娜拉 MingXing/ZhangNaLa.htm 7A9D4B 张韶涵 MingXiang/ZhangShaoHan.htm 0000FF 张靓颖 MingXin

欢迎光临Andy511823558的空间 892

多目标跟踪(MOT)中的卡尔曼滤波(Kalman filter)和匈牙利(Hungarian)算法详解

多目标跟踪(MOT)中的卡尔曼滤波(Kalman filter)和匈牙利(Hungarian)算法详解 1. 概览 在开始具体讨论卡尔曼滤波和匈牙利算法之前,首先我们来看一下基于检测的目标跟踪算法的大致流程。 2. 卡尔曼滤波(Kalman filter) 目标跟踪中使用的就是最基础的 Kalman filter 算法。这里也仅仅讨论最基础的 Kalman filter 算法。 卡尔曼滤波算法的过程很简单,如下图所示。最核心的两个步骤就是预测和更新(下图的 correct)。 在目标跟踪任务中,目标的

生命在于折腾! 2万+

【k8s实战】 在离线项目混部 通过kubeflow(tf-operator)部署TensorFlow机器学习任务+prometheus/grafana监控资源使用全过程(最新 图文)

目录在离线混合部署概念最新版kubeflow部署TensorFlow部署二级目录三级目录 在离线混合部署概念 先举一个例子,众所周知的天猫双十一当天的流量非常之大,那么就需要成百上千台服务器构成一个超大集群来提供计算能力,但是双十一过去之后,集群资源就面临着浪费的局面。假设业务分为在线和离线两种模式:在线任务需要资源相对较少,但要求响应时间短;离线任务则不需要对任务进行迅速响应,但是计算量相对较大、占用资源多。那么我们应该怎么在K8S集群上完成这两种业务的部署、并且使得CPU利用率始终维持在一个比较高的水平

Eros1on的博客 1545

javascript读取XML文件中的值

在xml文件里写好变量,该文件命名为xmlfile.xml &lt;VideoConfig&gt; &lt;video1&gt;video1.mp4&lt;/video1&gt; &lt;video2&gt;video2.mp4&lt;/video2&gt; &lt;video3&gt;video3.mp4&lt;/video3&gt; &lt;video4&gt;vi

韶光 1万+

DataGridView 右键菜单复制(公共)

dataGridView1.CellMouseClick += new DataGridViewCellMouseEventHandler( (sender1, e1) => { if (e1.Button == MouseButtons.Right) {

沁心渃水 2830

js读取xml文件

1,js也能读取xml文件内容,通过ActiveXObject来实现、 如:var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");     xmlDoc.async="false";     xmlDoc.load("xml/NewFile.xml");     var root=xmlDoc.documentElement;     aler

xclsky的博客 1671

Google Earth Engine(GEE)——使用归一化燃烧指数 (NBR) 绘制地表烧伤严重程度图

归一化燃烧指数(Normalized Burn Ratio, NBR)是一种遥感指标,用于评估野火或烧伤地面后的植被恢复情况。NBR能增强较大范围的火灾区域,如大于200公顷。它是通过比较远红外波段 (SWIR) 和近红外波段 (NIR) 的反射率来计算的。SWIR波段测量烧伤地面的反射率,NIR波段测量没有受到烧伤影响的植被的反射率。NBR的计算公式为:NBR =(NIR-SWIR)/(NIR + SWIR)。其中,NIR为近红外波段,SWIR为短波红外波段。

此星光明博客 3464

W5500以太网&PoE扩展模块原理图设计,已量产

本文将以 W5500 以太网 & PoE 扩展板为对象,从嵌入式硬件设计的视角,深度拆解其电路架构、核心器件选型、关键功能实现,以及这款板子解决行业痛点的设计思路。

不脱发的程序猿 937

javascript读取xml文件读取节点数据的例子

分享下用javascript读取xml文件读取节点数据方法。 读取的节点数据,还有一种情况是读取节点属性数据。 <head> <title></title> <script type="text/javascript"> var objLength = null; var xmlHttp; var strurl = ""...

aijiagui7454的博客 704

ardupilot开发 --- MavLink 篇

ardupilot开发 --- MavLink 篇

记录老板的每次pua,分享领导每天的毒鸡汤... 4250

javascript 读取xml 数据

///////////////////////////////////////////////////////////首先:xml文件(tree.xml)内容如下:<?xml version="1.0" encoding="gb2312"?><treeview><tree id="p1"> <text>山东省</text>...

111

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

JS读取xml数据

JS读取xml数据:http://www.weiweiflash.com/jsajax/v6kl938.html 转载于:https://www.cnblogs.com/pricks/archive/2009/11/19/1606048.html

weixin_30411819的博客 72

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

html动态调用xml文件内容,JavaScript实现读取与输出XML文件数据的方法示例

本文实例讲述了JavaScript实现读取与输出XML文件数据的方法。分享给大家供大家参考,具体如下:一、介绍通过JavaScript读取XML文档中数据的方法很多。其根本的思路就是:首先在后台加载XML文档,然后通过JavaScript获取文档中所需的数据,最后应用HTML展示获取的数据。二、获取XML元素的属性值的应用下面应用attributes属性和getNamedItem()方法获取一个指...

weixin_26882891的博客 754

javascript读取xml数据(转)

在网上找到一篇javascript读取xml数据很详细的文章,特转到自己博客中,一来同大家分享,二来留作资料参 考!.......... /////////////////////////////////////////// 首先:xml文件(tree.xml)内容如下: &lt;?xml version="1.0" encoding="gb2312"?&gt; &lt;tr...

song2012的专栏 187

如何通过js读取xml文件的数据?

转自:http://www.runoob.com/try/try.php?filename=tryxml_dom_getelement 例子如下: if (window.XMLHttpRequest)   {// code for IE7+, Firefox, Chrome, Opera, Safari   xmlhttp=new XMLHttpRequest();

看不过的黑工坊 3571

JavaScript读取xml文档中的数据库,并分页显示

XML纯属数据信息,在HTML页面显示中进行有效的显示,采用的方法是JavaScript读取XML中的数据记录,并一特定的方式显示出来。 利用的技术有,XML存储数据技术,JavaScript读取XML文件,JS控制数据分页技术。

示申 言舌 的专栏 1422

用js如何实现读取xml数据并且显示在html中

DOM 把 XML 文档作为树结构来查看。能够通过 DOM 树来访问所有元素。可以修改或删除它们的内容,并创建新的元素。元素,它们的文本,以及它们的属性,都被认为是节点。在本例中,将讲解用js如何实现读取xml数据并且显示在html中。感谢分享http://jingyan.baidu.com/article/1709ad8067b5804634c4f0ef.html 方法

有问题可关注公众号:前端研究院 后台输入问题回复 1万+
上一篇: ajax 接收json,xml类型数据
下一篇: jquery实现动态表格
wive
博客等级 码龄14年 33粉丝 119原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值