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显示隐藏层比较不错的方法分析
Sep 30 Javascript
javascript 拖放效果实现代码
Jan 22 Javascript
根据一段代码浅谈Javascript闭包
Dec 14 Javascript
JavaScript EasyPager 分页函数
May 25 Javascript
基于jquery实现状态限定编辑的代码
Feb 11 Javascript
浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法
Jan 10 Javascript
javascript模拟map输出与去除重复项的方法
Feb 09 Javascript
jquery+javascript编写国籍控件
Feb 12 Javascript
JavaScript学习笔记整理_用于模式匹配的String方法
Sep 19 Javascript
深入学习jQuery中的data()
Dec 22 Javascript
微信小程序开发animation心跳动画效果
Aug 16 Javascript
封装Vue Element的table表格组件的示例详解
Aug 19 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
PHP动态图像的创建
2006/10/09 PHP
深入理解PHP原理之错误抑制与内嵌HTML分析
2011/05/02 PHP
php 获取本地IP代码
2013/06/23 PHP
codeigniter发送邮件并打印调试信息的方法
2015/03/21 PHP
在WordPress中安装使用视频播放器插件Hana Flv Player
2016/01/04 PHP
PHP上传文件及图片到七牛的方法
2018/07/25 PHP
PHP7创建销毁session的实例方法
2020/02/03 PHP
jQuery实现的Div窗口震动特效
2014/06/09 Javascript
jQuery Checkbox 全选 反选的简单实例
2016/11/29 Javascript
Vue.js使用v-show和v-if的注意事项
2016/12/13 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
微信小程序page的生命周期和音频播放及监听实例详解
2017/04/07 Javascript
jquery 获取索引值在一定范围的列表方法
2018/01/25 jQuery
javascript 构建模块化开发过程解析
2019/09/11 Javascript
详解Python的Lambda函数与排序
2016/10/25 Python
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
Python Web编程之WSGI协议简介
2018/07/18 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
2019/06/24 Python
django 中使用DateTime常用的时间查询方式
2019/12/03 Python
np.dot()函数的用法详解
2020/01/17 Python
python线程join方法原理解析
2020/02/11 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
Python实时监控网站浏览记录实现过程详解
2020/07/14 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
2021/03/03 Python
利用CSS3的checked伪类实现OL的隐藏显示的方法
2010/12/18 HTML / CSS
奥地利婴儿用品和玩具购物网站:baby-markt.at
2020/01/26 全球购物
优秀求职信范文分享
2013/12/19 职场文书
住房租房协议书
2014/08/20 职场文书
关于运动会的广播稿
2014/09/22 职场文书
会计工作总结范文2014
2014/12/23 职场文书
2015年食品安全工作总结
2015/05/15 职场文书
利用python调用摄像头的实例分析
2021/06/07 Python
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python
三种方式清除vue路由跳转router-link的历史记录
2022/04/10 Vue.js
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android