JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐)


Posted in Javascript onJune 02, 2016

本文实例讲述了JS读取XML文件数据并以table形式显示数据的方法。分享给大家供大家参考,具体如下:

先看xml文件:

<?xml version="1.0" standalone="yes"?>
<student>
 <stuinfo>
  <stuName>张秋丽</stuName>
  <stuSex>女  </stuSex>
  <stuAge>18</stuAge>
 </stuinfo>
 <stuinfo>
  <stuName>李文才</stuName>
  <stuSex>男  </stuSex>
  <stuAge>31</stuAge>
 </stuinfo>
 <stuinfo>
  <stuName>李斯文</stuName>
  <stuSex>男  </stuSex>
  <stuAge>22</stuAge>
 </stuinfo>
 <stuinfo>
  <stuName>马英</stuName>
  <stuSex>女  </stuSex>
  <stuAge>25</stuAge>
 </stuinfo>
 <stuinfo>
  <stuName>孙红雷</stuName>
  <stuSex>男  </stuSex>
  <stuAge>32</stuAge>
 </stuinfo>
 <stuinfo>
  <stuName>欧阳俊雄</stuName>
  <stuSex>男  </stuSex>
  <stuAge>28</stuAge>
 </stuinfo>
 <stuinfo>
  <stuName>江琳</stuName>
  <stuSex>女  </stuSex>
  <stuAge>23</stuAge>
 </stuinfo>
 <stuinfo>
  <stuName>小小</stuName>
  <stuSex>女  </stuSex>
  <stuAge>22</stuAge>
 </stuinfo>
</student>

aspx页面代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="获取数据库数据生成XML.aspx.cs" Inherits="Chapter1.获取数据库数据生成XML" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title></title>
  <script type="text/javascript">
    function loadXMLDoc(dname) {
      if (window.XMLHttpRequest) {
        xhttp = new XMLHttpRequest();
      }
      else {
        xhttp = new ActiveXObject("Microsoft.XMLHTTP");
      }
      xhttp.open("GET", dname, false);
      xhttp.send("");
      return xhttp.responseXML;
    }
    function ReadXml() {
      var xmldoc = loadXMLDoc("Student.xml");
      //获得指定节点
      var divmsg = document.getElementById("xmlMsg");
      var msg = "<table border='1' id='mytable'><tr><th>姓名</th><th>性别</th><th>年龄</th><tr>";
      var nodes = xmldoc.getElementsByTagName("stuinfo");
      for (var i = 0; i < nodes.length; i++) {
        msg += "<tr>";
        msg += "<td>" + nodes[i].getElementsByTagName("stuName")[0].firstChild.nodeValue + "</td>";
        msg += "<td>" + nodes[i].getElementsByTagName("stuSex")[0].firstChild.nodeValue + "</td>";
        msg += "<td>" + nodes[i].getElementsByTagName("stuAge")[0].firstChild.nodeValue + "</td>";
        msg += "</tr>";
      }
      msg += "</table>";
      divmsg.innerHTML = msg;
    }
  </script>
</head>
<body>
  <form id="form1" runat="server">
  <div>
    <input type="button" value="JS读取XML" onclick="ReadXml()" /><br />
    <div id="xmlMsg">
    </div>
  </div>
  </form>
</body>
</html>

上面的JS操作主要就避免了使用childNodes(因为火狐中有时候会出现childNodes[0]获取到的是"\n"而不是我们想要的第一个子节点,这个自己可以去试下,反正我是遇到了这种情况),使得可以兼容IE、火狐,其他浏览器我没试。

更多关于JavaScript相关内容可查看本站专题:《JavaScript操作XML文件技巧总结》、《JavaScript中ajax操作技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
js 调用本地exe的例子(支持IE内核的浏览器)
Dec 26 Javascript
javascript 获取函数形参个数
Jul 31 Javascript
javascript中通过arguments参数伪装方法重载
Oct 08 Javascript
JS随机调用指定函数的方法
Jul 01 Javascript
javascript如何写热点图
Dec 08 Javascript
JS使用正则表达式过滤多个词语并替换为相同长度星号的方法
Aug 03 Javascript
vue.js-div滚动条隐藏但有滚动效果的实现方法
Mar 03 Javascript
js闭包学习心得总结
Apr 17 Javascript
Vue仿支付宝支付功能
May 25 Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
Nov 15 Javascript
微信小程序上传帖子的实例代码(含有文字图片的微信验证)
Jul 11 Javascript
JavaScript架构localStorage特殊场景下二次封装操作
Jun 21 Javascript
jquery.validate使用详解
Jun 02 #Javascript
jQuery ajax应用总结
Jun 02 #Javascript
JavaScript判断数字是否为质数的方法汇总
Jun 02 #Javascript
Jquery on方法绑定事件后执行多次的解决方法
Jun 02 #Javascript
EXT中单击button按钮grid添加一行(光标位置可设置)的实例代码
Jun 02 #Javascript
Javascript小技能总结(推荐)
Jun 02 #Javascript
Jquery为DIV添加click事件的简单实例
Jun 02 #Javascript
You might like
短波收音机简介
2021/03/01 无线电
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
2016/09/11 PHP
PHP实现图片压缩
2020/09/09 PHP
Laravel框架自定义公共函数的引入操作示例
2019/04/16 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
2019/07/26 PHP
PHP判断一个变量是否为整数、正整数的方法示例
2019/09/11 PHP
jquery插件jTimer(jquery定时器)使用方法
2013/12/23 Javascript
js 判断js函数、变量是否存在的简单示例代码
2014/03/04 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
js+html5实现canvas绘制网页时钟的方法
2016/05/21 Javascript
JS实现微信摇一摇原理解析
2017/07/22 Javascript
实现图片首尾平滑轮播(JS原生方法—节流)
2017/10/17 Javascript
Vue表情输入组件 微信face表情组件
2019/02/11 Javascript
使用Vue 实现滑动验证码功能
2019/06/27 Javascript
Element InfiniteScroll无限滚动的具体使用方法
2020/07/27 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
详解Python的Django框架中Manager方法的使用
2015/07/21 Python
Python增量循环删除MySQL表数据的方法
2016/09/23 Python
Python科学计算之NumPy入门教程
2017/01/15 Python
Python实现图片转字符画的示例代码
2017/08/21 Python
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
python实现log日志的示例代码
2018/04/28 Python
解决python爬虫中有中文的url问题
2018/05/11 Python
Python离线安装PIL 模块的方法
2019/01/08 Python
使用python serial 获取所有的串口名称的实例
2019/07/02 Python
Python实现栈和队列的简单操作方法示例
2019/11/29 Python
PyQt5实现登录页面
2020/05/30 Python
使用TensorBoard进行超参数优化的实现
2020/07/06 Python
HTML5本地存储和本地数据库实例详解
2017/09/05 HTML / CSS
新加坡网上化妆品店:Best Buy World
2018/05/18 全球购物
家长通知书家长评语
2014/04/17 职场文书
六年级学生评语
2014/04/22 职场文书
六一儿童节演讲稿
2014/05/23 职场文书
职场新人知识:如何制定一份合理的工作计划?
2019/09/11 职场文书
Canvas跟随鼠标炫彩小球的实现
2021/04/11 Javascript
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js