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 相关文章推荐
JQuery 获得绝对,相对位置的坐标方法
Feb 09 Javascript
使用JavaScript构建JSON格式字符串实现步骤
Mar 22 Javascript
JS实现日期加减的方法
Nov 29 Javascript
js完美的div拖拽实例代码
Jan 22 Javascript
深入学习JavaScript中的原型prototype
Aug 13 Javascript
JS实现的Select三级下拉菜单代码
Aug 20 Javascript
javascript:void(0)点击登录没反应怎么解决
Nov 13 Javascript
Summernote实现图片上传功能的简单方法
Jul 11 Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
Mar 25 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
Jun 13 Javascript
关于axios不能使用Vue.use()浅析
Jan 12 Javascript
Vue中插入HTML代码的方法
Sep 21 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
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
php在线打包程序源码
2008/07/27 PHP
基于pear auth实现登录验证
2010/02/26 PHP
PHP执行批量mysql语句的解决方法
2013/05/02 PHP
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
2016/09/11 PHP
json字符串之间的相互转换示例代码
2014/08/21 Javascript
jQuery插件Tmpl的简单使用方法
2015/04/27 Javascript
AspNet中使用JQuery boxy插件的确认框
2015/05/20 Javascript
JS实现鼠标滑过折叠与展开菜单效果代码
2015/09/06 Javascript
jQuery Mobile和HTML5开发App推广注册页
2016/11/07 Javascript
利用JS制作万年历的方法
2017/08/16 Javascript
JS实现小球的弹性碰撞效果
2017/11/11 Javascript
基于vue-upload-component封装一个图片上传组件的示例
2018/10/16 Javascript
Node.js console控制台简单用法分析
2019/01/04 Javascript
vue实现自定义多选按钮
2020/07/16 Javascript
js实现限定区域范围拖拉拽效果
2020/11/20 Javascript
js实现验证码干扰(动态)
2021/02/23 Javascript
浅谈五大Python Web框架
2017/03/20 Python
Python输出由1,2,3,4组成的互不相同且无重复的三位数
2018/02/01 Python
Python守护进程实现过程详解
2020/02/10 Python
python 的numpy库中的mean()函数用法介绍
2020/03/03 Python
Python基于BeautifulSoup爬取京东商品信息
2020/06/01 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
2020/06/09 Python
python3.7添加dlib模块的方法
2020/07/01 Python
如何利用python之wxpy模块玩转微信
2020/08/17 Python
python3 os进行嵌套操作的实例讲解
2020/11/19 Python
使用django自带的user做外键的方法
2020/11/30 Python
德国汉莎航空中国官网: Lufthansa中国
2017/03/30 全球购物
Lentiamo丹麦:购买便宜的隐形眼镜
2021/01/13 全球购物
Java Servlet的主要功能和作用是什么
2014/02/14 面试题
人力资源部门的主要职能
2014/02/22 职场文书
奥林匹克运动会口号
2014/06/19 职场文书
学校党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
实习单位鉴定意见
2015/06/04 职场文书
深入浅析Redis 集群伸缩原理
2021/05/15 Redis
世界十大狙击步枪排行榜
2022/03/20 杂记