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 相关文章推荐
jQuery UI AutoComplete 使用说明
Jun 20 Javascript
JS Map 和 List 的简单实现代码
Jul 08 Javascript
jquery仅用6行代码实现滑动门效果
Sep 07 Javascript
jQuery 特性操作详解及实例代码
Sep 29 Javascript
javascript设计模式之策略模式学习笔记
Feb 15 Javascript
详解angularjs中如何实现控制器和指令之间交互
May 31 Javascript
对vue事件的延迟执行实例讲解
Aug 28 Javascript
javascript面向对象程序设计实践常用知识点总结
Jul 29 Javascript
vue输入节流,避免实时请求接口的实例代码
Oct 30 Javascript
在vue中阻止浏览器后退的实例
Nov 06 Javascript
vue+elementUI中表格高亮或字体颜色改变操作
Nov 02 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
Nov 03 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 setcookie设置Cookie用法(及设置无效的问题)
2011/07/13 PHP
PHP 解决session死锁的方法
2013/06/20 PHP
PHP的Socket网络编程入门指引
2015/08/11 PHP
PHP删除二维数组中相同元素及数组重复值的方法示例
2017/05/05 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
2017/06/09 PHP
Smarty模板类内部原理实例分析
2019/07/03 PHP
PHP正则之正向预查与反向预查讲解与实例
2020/04/06 PHP
PHP语言对接抖音快手小红书视频/图片去水印API接口源码
2020/08/11 PHP
jquery插件实现鼠标经过图片右侧显示大图的效果(类似淘宝)
2013/02/04 Javascript
浅谈javascript实现八大排序
2015/04/27 Javascript
JS实现自动定时切换的简洁网页选项卡效果
2015/10/13 Javascript
js实现跨域访问的三种方法
2015/12/09 Javascript
深入理解Angular2 模板语法
2016/08/07 Javascript
浅谈js控制li标签排序问题 js调用php函数的方法
2016/10/16 Javascript
JS实现数组按升序及降序排列的方法
2017/04/26 Javascript
vue上传图片组件编写代码
2017/07/26 Javascript
json2.js 入门教程之使用方法与实例分析
2017/09/14 Javascript
vue观察模式浅析
2018/09/25 Javascript
全网小程序接口请求封装实例代码
2020/11/06 Javascript
Python StringIO模块实现在内存缓冲区中读写数据
2015/04/08 Python
Python实现简单的文件传输与MySQL备份的脚本分享
2016/01/03 Python
ubuntu系统下 python链接mysql数据库的方法
2017/01/09 Python
详解Python函数可变参数定义及其参数传递方式
2017/08/02 Python
Python自动抢红包教程详解
2019/06/11 Python
python实现局域网内实时通信代码
2019/12/22 Python
详解python方法之绑定方法与非绑定方法
2020/08/17 Python
HTML5拖拽功能实现的拼图游戏
2018/07/31 HTML / CSS
化学相关工作求职信
2013/10/02 职场文书
校园创业策划书
2014/01/14 职场文书
社区志愿者活动总结
2014/06/26 职场文书
代办社保委托书范文
2014/10/06 职场文书
公司2014年度工作总结
2014/12/10 职场文书
论文致谢词范文
2015/05/14 职场文书
2016年大学光棍节活动总结
2016/04/05 职场文书
Python的这些库,你知道多少?
2021/06/09 Python
vue项目如何打包之项目打包优化(让打包的js文件变小)
2022/04/30 Vue.js