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 相关文章推荐
Javascript实现重力弹跳拖拽运动效果示例
Jun 28 Javascript
Jquery遍历节点的方法小集
Jan 22 Javascript
jquery Ajax 实现加载数据前动画效果的示例代码
Feb 07 Javascript
JavaScript中判断整字类型最简洁的实现方法
Nov 08 Javascript
使用requestAnimationFrame实现js动画性能好
Aug 06 Javascript
JS基于递归实现倒计时效果的方法
Nov 26 Javascript
JavaScript中this的用法及this在不同应用场景的作用解析
Apr 13 Javascript
微信小程序实现发送验证码按钮效果
Dec 20 Javascript
JavaScript面向对象编程小游戏---贪吃蛇代码实例
May 15 Javascript
Vue 动态路由的实现及 Springsecurity 按钮级别的权限控制
Sep 05 Javascript
JS实现图片懒加载(lazyload)过程详解
Apr 02 Javascript
Vue 简单实现前端权限控制的示例
Dec 25 Vue.js
做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
php解析字符串里所有URL地址的方法
2015/04/03 PHP
PHP批量生成图片缩略图的方法
2015/06/18 PHP
php快速排序原理与实现方法分析
2016/05/26 PHP
PHP使用反向Ajax技术实现在线客服系统详解
2019/07/01 PHP
用php定义一个数组最简单的方法
2019/10/04 PHP
Nigma vs AM BO3 第二场2.13
2021/03/10 DOTA
自动设置iframe大小的jQuery代码
2013/09/11 Javascript
javascript表单验证使用示例(javascript验证邮箱)
2014/01/07 Javascript
jquery插件jquery.nicescroll实现图片无滚动条左右拖拽的方法
2015/08/10 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
2015/12/10 Javascript
Node.js的Koa框架上手及MySQL操作指南
2016/06/13 Javascript
详解JavaScript模块化开发
2016/12/04 Javascript
node.js入门学习之url模块
2017/02/25 Javascript
Angular 4中如何显示内容的CSS样式示例代码
2017/11/06 Javascript
vue.js的computed,filter,get,set的用法及区别详解
2018/03/08 Javascript
vue 开发一个按钮组件的示例代码
2018/03/27 Javascript
JS实现的合并多个数组去重算法示例
2018/04/11 Javascript
Vue动态组件与异步组件实例详解
2019/02/23 Javascript
[14:21]VICI vs EG (BO3)
2018/06/07 DOTA
深度剖析使用python抓取网页正文的源码
2014/06/11 Python
Python WXPY实现微信监控报警功能的代码
2017/10/20 Python
Python工程师面试必备25条知识点
2018/01/17 Python
解决Python找不到ssl模块问题 No module named _ssl的方法
2019/04/29 Python
Python实现获取系统临时目录及临时文件的方法示例
2019/06/26 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
python如何发送带有附件、正文为HTML的邮件
2021/02/27 Python
叙述DBMS对数据控制功能有哪些
2016/06/12 面试题
介绍一下EJB的体系结构
2012/08/01 面试题
JAVA程序员面试题
2012/10/03 面试题
医学专业大学生求职的自我评价
2013/11/27 职场文书
函授教育个人学习的自我评价
2013/12/31 职场文书
养殖行业的创业计划书
2014/01/05 职场文书
文明餐桌行动实施方案
2014/02/19 职场文书
个人考核材料
2014/05/15 职场文书
售后服务承诺书怎么写
2014/05/21 职场文书
总账会计岗位职责
2015/04/02 职场文书