做一个菜单,需要读取服务器端的XML文件,然后根据XML文件内容拼成菜单.

读取XMLvar docMenu=new ActiveXObject("Microsoft.XMLDOM"); //创建XmlDom对象docMenu.async=true; //使用异步加载docMenu.onreadystatechange=LoadedMenu;

function LoadMenuDoc(){var Url="Xml/pageMenu.xml";    docMenu.load(Url);}

function LoadedMenu(){var txt="<table cellspacing=\"1\" class=\"grid fixed\"><tr><td class=\"category hand\">未加载!</td></tr></table>"if(docMenu.readyState==4)    {        txt = "";if(docMenu.parseError.errorCode != 0)         {            txt="Error";        }else        {var parents = docMenu.documentElement.selectNodes("ParentMenu");if(parents != null && parents.length > 0)            {for(var i=0;i<parents.length;++i)                {if(parents[i].getAttribute("Active") == 0)                    {                        txt += "<table cellspacing=\"1\" class=\"grid fixed\"><tr><td class=\"category linkdisable\">≡ { " + parents[i].getAttribute("Name") + " } ≡</td></tr></table><table cellspacing=\"0\"><tr><td colspan=\"3\" style=\"height: 1px;\"><img alt=\"\" src=\"images/blank.gif\" /></td></tr></table>";                        continue;                    }else                    {                        txt += "<table cellspacing=\"1\" class=\"grid fixed\"><tr><td class=\"category hand\" οnclick=\"collapse('menu_"+ i +"')\">≡ { " + parents[i].getAttribute("Name") + " } ≡</td></tr><tr id=\"menu_" + i + "\"><td class=\"items\"><ul>";                    }var children  = parents[i].childNodes;if(children != null && children.length > 0)                    {for(var j=0;j<children.length;++j)                        {if(children[j].getAttribute("Active") == 0)                            {                                txt += "<li class=\"linkdisable\">" + children[j].getAttribute("Name") + "</li>";                            }else                            {                                txt += "<li><a href=\"" + children[j].getAttribute("Url") + "\">" + children[j].getAttribute("Name") + "</a></li>";                            }                        }                    }else                    {                        txt += "<li><a href=\"#\"></a></li>";                    }                    txt += "</ul></td></tr></table><table cellspacing=\"0\"><tr><td colspan=\"3\" style=\"height: 1px;\"><img alt=\"\" src=\"images/blank.gif\" /></td></tr></table>";                }            }          }    }else    {        txt="<table cellspacing=\"1\" class=\"grid fixed\"><tr><td class=\"category hand\">Loading</td></tr></table>";    }    leftBar.innerHTML = txt;}

转载于:https://www.cnblogs.com/KenBlove/archive/2008/11/22/1339043.html

用JS读取XML文件相关推荐

  1. linux下用js生成xml文件,使用JS读取XML文件的方法

    由于项目上需要解析xml,于是各种百度,然后自己总结了下各个主流浏览器解析xml的方法,只能是很浅显的知道他的用法,但是还没有深层次的研究. 不同的浏览器对xml的解析方式不同,根据目前主流浏览器大致 ...

  2. html表格中绑定显示xml文档内容的简单实例,JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐)...

    本文实例讲述了JS读取XML文件数据并以table形式显示数据的方法.分享给大家供大家参考,具体如下: 先看xml文件: 张秋丽 女 18 李文才 男 31 李斯文 男 22 马英 女 25 孙红雷 ...

  3. 利用js读取xml文件

    JS读取XML文件 XML文件: <?xml version="1.0" encoding="utf-8" ?> <CATALOG>&l ...

  4. HTML读取xml文件的三种办法

    刚开始学这里的时候有点懵,以前没学过.但是学安卓动画(Animation)的时候接触过xml文件,总体来说不难. 一般来说xml文件用来储存数据,然后html读取它,主要介绍三种读取方式 利用CSS读 ...

  5. SQL Server中读取XML文件的简单做法

    SQL Server 2000使得以XML导出数据变得更加简单,但在SQL Server 2000中导入XML数据并对其进行处理则有些麻烦.本文介绍在SQL Server中读取XML文件的简单做法. ...

  6. [转帖]C#执行SQL脚本,读取XML文件

    [转帖]C#执行SQL脚本,读取XML文件 需要添加如下引用: using System.IO; using System.Data.SqlClient; using System.Collectio ...

  7. java 存取xml数据_JAVA读取XML文件数据

    XML文档内容如下: title1 title2 title3 JAVA代码如下: package cn.mylucene; import java.io.File; import java.io.I ...

  8. C#中读取xml文件指定节点

    假设xml文件内容是 <?xml version="1.0" encoding="utf-8"?> <Workflow>   <A ...

  9. java读取XML文件的四种方式

    java读取XML文件的四种方式 Xml代码 <?xml version="1.0" encoding="GB2312"?> <RESULT& ...

最新文章

  1. python创建变量revenue_Python数据分析:小红书销售额预测
  2. oracle中角色和用户权限,Oracle用户、角色、权限管理
  3. 一个显示日期的工具类
  4. Java JDBC工具类
  5. uwsgi03----直接部署
  6. python2升级_Python2 升级 Python3
  7. paip.tree 生成目录树到txt后的折叠查看
  8. 概率论基础知识(书本摘录总结)
  9. 免费的mysql图形化界面_免费好用的MySQL数据库客户端图形界面管理工具
  10. Selenium 爬取微信公众号文章并保存为pdf与长图片(2022-06-09更新版)
  11. 过年倒计时 java swing 附源码
  12. rdt(可靠运输协议)理解
  13. mlir toy 教程(1)
  14. Exploiting Shared Representations for Personalized Federated Learning【2021 icml】
  15. 运维工作中常见的一些定律
  16. Java流程控制方法
  17. Golang - bufio 包
  18. Jetson TX2 arm板子刷机,安装Caffe
  19. 美的2021高频题汇总 | 备战春招,刷这30题就够了!
  20. AVAIO流学习总结

热门文章

  1. 【LeetCode】87. Scramble String
  2. iOS_Spring自动生成Model,Service,Controller 之 介绍
  3. 一个Web页面的问题分析
  4. 利用逻辑回归进行简单的人群分类解决广告推荐问题
  5. “不允许对64位应用程序进行修改”的解决方法 --“Changes to 64-bit applications are not allowed.”
  6. vue-cli ——解决多次复用含有Echarts图表组件的问题
  7. js插件---JS表格组件BootstrapTable行内编辑解决方案x-editable
  8. 安装了低版本Jdk后eclipse无法打开的终极解决方法
  9. Android Retrofit+RxJava 优雅的处理服务器返回异常、错误
  10. C++ 异常机制分析