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 类方法定义还是有点区别
Apr 15 Javascript
JS 文字符串转换unicode编码函数
May 30 Javascript
查看图片(前进后退)功能实现js代码
Apr 24 Javascript
js控制再次点击按钮之间的间隔时间可防止重复提交
Aug 01 Javascript
基于jquery实现的可编辑下拉框实现代码
Aug 02 Javascript
jQuery实现为图片添加镜头放大效果的方法
Jun 25 Javascript
js实现的在线调色板功能完整实例
Dec 21 Javascript
Bootstrap按钮组实例详解
Jul 03 Javascript
JS判断用户用的哪个浏览器实例详解
Oct 09 Javascript
JavaScript提升机制Hoisting详解
Oct 23 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
Nov 26 jQuery
浅谈在vue-cli3项目中解决动态引入图片img404的问题
Aug 04 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
这部好评如潮的动漫 知名梗频出 但是画风劝退很多人
2020/03/08 日漫
PHP pathinfo()获得文件的路径、名称等信息说明
2011/09/13 PHP
php利用scws实现mysql全文搜索功能的方法
2014/12/25 PHP
php防止网站被攻击的应急代码
2015/10/21 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
2016/11/25 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
jquery.cvtooltip.js 基于jquery的气泡提示插件
2010/11/19 Javascript
js 字符串转化成数字的代码
2011/06/29 Javascript
JS onmousemove鼠标移动坐标接龙DIV效果实例
2013/12/16 Javascript
javascipt:filter过滤介绍及使用
2014/09/10 Javascript
jQuery.holdReady()方法用法实例
2014/12/27 Javascript
JS实现淘宝支付宝网站的控制台菜单效果
2015/09/28 Javascript
window.setInterval()方法的定义和用法及offsetLeft与style.left的区别
2015/11/11 Javascript
有关Promises异步问题详解
2015/11/13 Javascript
AngularJS中isolate scope的用法分析
2016/11/22 Javascript
Vue.js学习之过滤器详解
2017/01/22 Javascript
webpack2.0配置postcss-loader的方法
2017/08/17 Javascript
js中时间格式化的几种方法
2018/07/22 Javascript
JS模拟浏览器实现全局搜索功能
2019/09/11 Javascript
vue中移动端调取本地的复制的文本方式
2020/07/18 Javascript
Vertx基于EventBus发送接受自定义对象
2020/11/16 Javascript
python的random模块及加权随机算法的python实现方法
2017/01/04 Python
浅谈function(函数)中的动态参数
2017/04/30 Python
人生苦短我用python python如何快速入门?
2018/03/12 Python
PyTorch读取Cifar数据集并显示图片的实例讲解
2018/07/27 Python
python自动发送测试报告邮件功能的实现
2019/01/22 Python
python创建子类的方法分析
2019/11/28 Python
python3 webp转gif格式的实现示例
2019/12/10 Python
澳大利亚当地社区首选的光学商店:1001 Optical
2019/08/24 全球购物
亚洲在线旅行门户网站:Expedia.com.hk(智游网)
2020/04/14 全球购物
学前教育专业毕业生自荐信
2013/10/03 职场文书
智能电子应届生求职信
2013/11/10 职场文书
双语教学实施方案
2014/03/23 职场文书
详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)
2021/07/01 HTML / CSS
简单且有用的Python数据分析和机器学习代码
2021/07/02 Python
实现GO语言对数组切片去重
2022/04/20 Golang