js使用递归解析xml


Posted in Javascript onDecember 12, 2014

xml结构:

<RightMenuItems>

  <Item Code="New" Name="新建" GroupCode="Edit" GroupName="编辑"/>

  <Item Code="Open" Name="打开" GroupCode="Edit" GroupName="编辑">

    <item Code="Word" Name="Word文档" GroupCode="CommonDocument" GroupName="常规"/>

    <item Code="Excel" Name="Excel文档" GroupCode="CommonDocument" GroupName="常规"/>

    <item Code="CustomDocument" Name="自定义文档" GroupCode="CustomDocument" GroupName="自定义"/>

  </Item>

  <Item Code="Save" Name="保存" GroupCode="Edit" GroupName="编辑"/>

  <Item Code="Exit" Name="离开" GroupCode="Exit" GroupName="离开"/>

</RightMenuItems>

解析方法:

$(xml).find("RightMenuItems").each(function () {
 this.data = Traversal($(this).children());

 });

var Traversal = function (nodes) {

        var itemList = new Array();

        $.each(nodes, function () {

            var entity = new RightMenuEntity();

            var obj = $(this);

            entity.Code = obj[0].getAttribute("Code");

            entity.Name = obj[0].getAttribute("Name");

            entity.GroupCode = obj[0].getAttribute("GroupCode");

            entity.GroupName = obj[0].getAttribute("GroupName");

            if (obj[0].hasChildNodes()) entity.ChildItems = Traversal(obj.children());

            itemList.push(entity);

        });

        return itemList;

    };

以上就是javascript使用递归解析XML的全部代码了,超级简洁,非常使用,给需要的小伙伴参考下。

Javascript 相关文章推荐
JSON 学习之完全手册 图文
May 29 Javascript
基于JQuery的动态删除Table表格的行和列的代码
May 12 Javascript
javascript客户端遍历控件与获取父容器对象示例代码
Jan 06 Javascript
jquery提示效果实例分析
Nov 25 Javascript
JavaScript基础知识之方法汇总结
Jan 24 Javascript
Bootstrap创建可折叠的组件
Feb 23 Javascript
js实现目录链接,内容跟着目录滚动显示的简单实例
Oct 15 Javascript
JavaScript 保护变量不被随意修改的实现代码
Sep 27 Javascript
vue.js中toast用法及使用toast弹框的实例代码
Aug 27 Javascript
原生JS实现前端本地文件上传
Sep 08 Javascript
Element InfiniteScroll无限滚动的具体使用方法
Jul 27 Javascript
Vue 组件复用多次自定义参数操作
Jul 27 Javascript
做web开发 先学JavaScript
Dec 12 #Javascript
兼容主流浏览器的JS复制内容到剪贴板
Dec 12 #Javascript
Javascript模拟加速运动与减速运动代码分享
Dec 11 #Javascript
javascript中HTMLDOM操作详解
Dec 11 #Javascript
javascript实现修改微信分享的标题内容等
Dec 11 #Javascript
javascript表单验证和Window详解
Dec 11 #Javascript
使用百度地图api实现根据地址查询经纬度
Dec 11 #Javascript
You might like
MOTOROLA 摩托罗拉 MODEL 66-XI五灯中波收音机
2021/03/02 无线电
php字符串截取的简单方法
2013/07/04 PHP
FireFox浏览器使用Javascript上传大文件
2013/10/30 PHP
php实现事件监听与触发的方法
2014/11/21 PHP
php获取、检查类名、函数名、方法名的函数方法
2015/06/25 PHP
PHP PDOStatement::bindValue讲解
2019/01/30 PHP
使用JavaScript库还是自己写代码?
2010/01/28 Javascript
js innerHTML 改变div内容的方法
2013/08/03 Javascript
JQuery选择器、过滤器大整理
2015/05/26 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
jQuery插件实现多级联动菜单效果
2015/12/01 Javascript
redux中间件之redux-thunk的具体使用
2018/04/17 Javascript
React项目动态设置title标题的方法示例
2018/09/26 Javascript
vue项目设置scrollTop不起作用(总结)
2018/12/21 Javascript
Python中的连接符(+、+=)示例详解
2017/01/13 Python
Python实现识别手写数字大纲
2018/01/29 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
python flask安装和命令详解
2019/04/02 Python
10 行Python 代码实现 AI 目标检测技术【推荐】
2019/06/14 Python
利用python对excel中一列的时间数据更改格式操作
2020/07/14 Python
python实现人性化显示金额数字实例详解
2020/09/25 Python
用CSS3写的模仿iPhone中的返回按钮
2015/04/04 HTML / CSS
de Bijenkorf比利时官网:荷兰最知名的百货商店
2017/06/29 全球购物
荷兰天然和有机产品网上商城:BigGreenSmile.nl
2020/07/26 全球购物
JRE、JDK、JVM之间的关系怎样
2012/05/16 面试题
是否有自动比较结构的方法
2015/06/03 面试题
英文版区域经理求职信
2013/10/23 职场文书
马智宇结婚主持词
2014/04/01 职场文书
竞选演讲稿范文大全
2014/05/12 职场文书
垃圾分类的活动方案
2014/08/15 职场文书
个人先进事迹材料
2014/12/29 职场文书
邀请书格式范文
2015/02/02 职场文书
2015年党风建设工作总结
2015/04/29 职场文书
中学团支部工作总结
2015/08/13 职场文书
Python基础之pandas数据合并
2021/04/27 Python
Python使用OpenCV实现虚拟缩放效果
2022/02/28 Python