JavaScript实现读取与输出XML文件数据的方法示例


Posted in Javascript onJune 05, 2018

本文实例讲述了JavaScript实现读取与输出XML文件数据的方法。分享给大家供大家参考,具体如下:

一、介绍

通过JavaScript读取XML文档中数据的方法很多。

其根本的思路就是:首先在后台加载XML文档,然后通过JavaScript获取文档中所需的数据,最后应用HTML展示获取的数据。

二、获取XML元素的属性值的应用

下面应用attributes属性和getNamedItem()方法获取一个指定的XML文档中的属性值。

三、代码

首先创建一个XML文档,并且为指定的元素设置属性,程序代码如下:

<?xml version="1.0" encoding="GB2312"?>
<employes>
  <employe id='1' attendence='经理'>
    <number>1001</number>
    <name>程**</name>
    <object>PHP</object>
    <tel>84971547</tel>
    <address>长春市</address>
    <e_mail>cak**@sina.com</e_mail>
  </employe>
</employes>

然后创建一个index.html文件,实现XML元素中数据和属性值的输出。

获取employe元素的引用,通过attributes获取employe元素的属性集合,用getNamedItem()方法获取集合attributes中attendence对象的引用,并将其赋值给变量attendenceperson。最后通过字符串的拼接实现XML文档中数据和属性值的输出,这里获取的属性值为“经理”。

程序代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>3water.com 获取XML元素的属性值</title>
</head>
<script>
function get_xml(){
  var xmldoc,employesNode,employeNode;        //定义变量
  var nameNode,titleNode,numberNode,displayText;   //定义变量
  var attributes,attendenceperson
  xmldoc = new ActiveXObject("Microsoft.XMLDOM");
  xmldoc.async = false;
  xmldoc.load("index.xml"); //载入指定的XML文档
  employesNode=xmldoc.documentElement;        //获取根节点
  employeNode=employesNode.firstChild;        //访问根元素下的第一个节点
  numberNode=employeNode.firstChild;         //获取number元素
  nameNode=numberNode.nextSibling;          //获取name元素
  objectNode=nameNode.nextSibling;
  telNode=objectNode.nextSibling;
  attributes=employeNode.attributes;         //获取employe节点的属性集合
  attendenceperson=attributes.getNamedItem("attendence")   //获取集合指定对象的引用
  //实现字符串的拼接,输出XML文档中的数据
  displayText="员工信息:"+numberNode.firstChild.nodeValue+','+nameNode.firstChild.nodeValue+', '+objectNode. firstChild.nodeValue+','+telNode.firstChild.nodeValue+"<br>职务:"+attendenceperson.value;
  div.innerHTML=displayText; //指定在ID标识为div的<div>标签中输出字符串displayText的信息
}
</script>
<body>
<h1>输出XML元素中的数据和属性值</h1>
<!--应用onClick事件调用函数get_xml()-->
<input type="button" value="获取XML元素的属性值" onClick="get_xml()">
<div id="div"></div>
</body>
</html>

四、运行结果

JavaScript实现读取与输出XML文件数据的方法示例

注:这里使用了ActiveXObject来进行针对xml文件的操作,需要使用兼容IE的浏览器才能得到运行效果。否则会提示:ActiveXObject is not defined

Javascript 相关文章推荐
Javascript JSQL,SQL无处不在,
May 05 Javascript
ExtJS 设置级联菜单的默认值
Jun 13 Javascript
jquery插件制作教程 txtHover
Aug 17 Javascript
浅析IE10兼容性问题(frameset的cols属性)
Jan 03 Javascript
js的隐含参数(arguments,callee,caller)使用方法
Jan 28 Javascript
Node.js的包详细介绍
Jan 14 Javascript
JavaScript声明变量名的语法规则
Jul 10 Javascript
jquery自定义表单验证插件
Oct 12 Javascript
Node.js自定义实现文件路由功能
Sep 22 Javascript
vue this.reload 方法 配置
Sep 12 Javascript
mpvue微信小程序多列选择器用法之省份城市选择的实现
Mar 07 Javascript
vue自动路由-单页面项目(非build时构建)
Apr 30 Javascript
Node错误处理笔记之挖坑系列教程
Jun 05 #Javascript
Vue项目中跨域问题解决方案
Jun 05 #Javascript
Vue多系统切换实现方案
Jun 05 #Javascript
jQuery实现的简单对话框拖动功能示例
Jun 05 #jQuery
vue2.0 自定义组件的方法(vue组件的封装)
Jun 05 #Javascript
vue使用技巧及vue项目中遇到的问题
Jun 04 #Javascript
jQuery实现的滑块滑动导航效果示例
Jun 04 #jQuery
You might like
PHP&amp;MYSQL服务器配置说明
2006/10/09 PHP
亲密接触PHP之PHP语法学习笔记1
2006/12/17 PHP
PHP实现简单数字分页效果
2015/07/26 PHP
PHP用户管理中常用接口调用实例及解析(含源码)
2017/03/09 PHP
json字符串之间的相互转换示例代码
2014/08/21 Javascript
javascript解析json实例详解
2014/11/05 Javascript
JavaScript中的fontsize()方法使用详解
2015/06/08 Javascript
jQuery实现移动端手机商城购物车功能
2016/09/24 Javascript
Bootstrap CSS布局之表格
2016/12/17 Javascript
纯jQuery实现前端分页功能
2017/03/23 jQuery
在React中如何优雅的处理事件响应详解
2017/07/24 Javascript
JavaScript获取移动设备型号的实现代码(JS获取手机型号和系统)
2018/03/10 Javascript
基于VUE实现的九宫格抽奖功能
2018/09/30 Javascript
js实现的在本地预览图片功能示例
2019/11/09 Javascript
vue ssr服务端渲染(小白解惑)
2019/11/10 Javascript
微信小程序实现简单文字跑马灯
2020/05/26 Javascript
jQuery实现滑动开关效果
2020/08/02 jQuery
老生常谈Python进阶之装饰器
2017/05/11 Python
python使用webdriver爬取微信公众号
2018/08/31 Python
python使用Turtle库绘制动态钟表
2018/11/19 Python
详解重置Django migration的常见方式
2019/02/15 Python
Python3.4学习笔记之类型判断,异常处理,终止程序操作小结
2019/03/01 Python
如何运行带参数的python脚本
2019/11/15 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
keras.layer.input()用法说明
2020/06/16 Python
CSS3中利用animation属性创建雪花飘落特效
2014/05/14 HTML / CSS
使用HTML5里的classList操作CSS类
2016/06/28 HTML / CSS
恶意软件的定义
2014/11/12 面试题
军训自我鉴定范文
2014/02/13 职场文书
大学班级学风建设方案
2014/05/01 职场文书
电子商务专业应届生求职信
2014/05/28 职场文书
转让协议书范本
2014/09/13 职场文书
龙潭大峡谷导游词
2015/02/10 职场文书
详解vue中v-for的key唯一性
2021/05/15 Vue.js
vue配置型表格基于el-table拓展之table-plus组件
2022/04/12 Vue.js
MySQL中JOIN连接的基本用法实例
2022/06/05 MySQL