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 相关文章推荐
SharePoint 客户端对象模型 (一) ECMA Script
May 22 Javascript
JavaScript跨平台的开源框架NativeScript
Mar 24 Javascript
jQuery使用slideUp方法实现控制元素缓慢收起
Mar 27 Javascript
JS实现黑色风格的网页TAB选项卡效果代码
Oct 09 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
Dec 03 Javascript
实现React单页应用的方法详解
Aug 02 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
Mar 01 Javascript
JS实现的Unicode编码转换操作示例
Apr 28 Javascript
详解webpack3如何正确引用并使用jQuery库
Aug 26 jQuery
jQuery实现鼠标点击处心形漂浮的炫酷效果示例
Apr 12 jQuery
如何使用vuex实现兄弟组件通信
Nov 02 Javascript
vue实现前台列表数据过滤搜索、分页效果
May 28 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
一个没有MYSQL数据库支持的简易留言本的编写
2006/10/09 PHP
php mysql数据库操作分页类
2008/06/04 PHP
php 进度条实现代码
2009/03/10 PHP
thinkphp实现数组分页示例
2014/04/13 PHP
PHP Swoole异步MySQL客户端实现方法示例
2019/10/24 PHP
jquery调用wcf并展示出数据的方法
2011/07/07 Javascript
jQuery不间断滚动效果(模拟百度新闻支持文字/图片/垂直滚动)
2013/02/05 Javascript
使用 TypeScript 重新编写的 JavaScript 坦克大战游戏代码
2015/04/07 Javascript
浅析$.getJSON异步请求和同步请求
2016/06/06 Javascript
JS实现点击事件统计的简单实例
2016/07/10 Javascript
jQGrid Table操作列中点击【操作】按钮弹出按钮层的实现代码
2016/12/05 Javascript
微信小程序 开发之顶部导航栏实例代码
2017/02/23 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
深入浅析vue组件间事件传递
2017/12/29 Javascript
javascript trie前缀树的示例
2018/01/29 Javascript
详解Webpack + ES6 最新环境搭建与配置
2018/06/04 Javascript
Vue全局loading及错误提示的思路与实现
2019/08/09 Javascript
解决Vue打包上线之后部分CSS不生效的问题
2019/11/12 Javascript
Element Collapse 折叠面板的使用方法
2020/07/26 Javascript
javascript使用canvas实现饼状图效果
2020/09/08 Javascript
python字符串替换示例
2014/04/24 Python
python调用java模块SmartXLS和jpype修改excel文件的方法
2015/04/28 Python
利用Python在一个文件的头部插入数据的实例
2018/05/02 Python
Python脚本利用adb进行手机控制的方法
2019/07/08 Python
python修改字典键(key)的方法
2019/08/05 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
2019/08/12 Python
Python调用Windows命令打印文件
2020/02/07 Python
Michael Kors加拿大官网:购买设计师手袋、手表、鞋子、服装等
2019/03/16 全球购物
Myprotein比利时官方网站:欧洲第一运动营养品牌
2020/10/04 全球购物
大学毕业生个人自荐信范文
2014/01/08 职场文书
高三历史教学反思
2014/01/09 职场文书
有关三国演义的读书笔记
2015/06/25 职场文书
2015秋季幼儿园开学通知
2015/07/16 职场文书
SQLServer之常用函数总结详解
2021/08/30 SQL Server
python对文档中元素删除,替换操作
2022/04/02 Python
关于Python中进度条的六个实用技巧分享
2022/04/05 Python