js使用递归解析xml

 更新时间:2014年12月12日 10:24:31   投稿:hebedich  
这篇文章主要介绍了js使用递归解析xml,需要的朋友可以参考下

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的全部代码了,超级简洁,非常使用,给需要的小伙伴参考下。

相关文章

  • ES6   Promise基础用法(resolve、reject、then、catch,all)

    ES6   Promise基础用法(resolve、reject、then、catch,a

    Promise是JavaScript中处理异步操作的对象,它有三种状态:Pending、Fulfilled、Rejected,使用new Promise创建Promise对象,通过resolve和reject改变状态,then和catch方法用于处理成功和失败的结果,本文介绍ES6 Promise用法,感兴趣的朋友一起看看吧
    2024-09-09
  • 微信小程序学习之自定义滚动弹窗

    微信小程序学习之自定义滚动弹窗

    这篇文章主要给大家介绍了关于微信小程序学习之自定义滚动弹窗的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • javascript命名约定(变量 函数 类 组件)

    javascript命名约定(变量 函数 类 组件)

    这篇小文章主要是通过一些例子来介绍一些Javascript中一些关于命名变量,函数,类或者是组件的通用约定,虽然这些规则并不是强制性的,但是呢,他们却被一些JS社区所广泛采用,所以,了解他们还是很有必要的
    2023-03-03
  • javascript表单处理具体实现代码(表单、链接、按钮)

    javascript表单处理具体实现代码(表单、链接、按钮)

    这篇文章主要介绍了javascript表单处理具体实现代码,包括各种表单、链接、按钮控件介绍,感兴趣的朋友可以参考一下
    2016-05-05
  • JS实现网页端猜数字小游戏

    JS实现网页端猜数字小游戏

    这篇文章主要为大家详细介绍了JS实现网页端猜数字小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • JavaScript中子对象访问父对象的方式详解

    JavaScript中子对象访问父对象的方式详解

    js中虽然没有传统面向对象的编程语言里子类访问父类的特殊语法,但是我们可以根据需要造一个,接下来本文给大家分享在JavaScript中子对象访问父对象的方式,需要的朋友可以参考下
    2016-09-09
  • javascript实现html页面之间参数传递的四种方法实例分析

    javascript实现html页面之间参数传递的四种方法实例分析

    这篇文章主要介绍了javascript实现html页面之间参数传递的四种方法,结合实例形式较为详细的分析了JavaScript实现页面之间参数传递的常用技巧,需要的朋友可以参考下
    2015-12-12
  • JavaScript删除指定子元素代码实例

    JavaScript删除指定子元素代码实例

    这篇文章主要介绍了JavaScript删除指定子元素代码实例,本文给出了代码实例和实现代码解释,需要的朋友可以参考下
    2015-01-01
  • js实现圆盘记速表

    js实现圆盘记速表

    本文分享了一个利用AmCharts制作的汽车速度计速表,通过设置不同的速度(数字)来动态改变计速表的指针。使用也非常简单,下面给出方法。
    2015-08-08
  • JS实现点击复选框将按钮或文本框变为灰色不可用的方法

    JS实现点击复选框将按钮或文本框变为灰色不可用的方法

    这篇文章主要介绍了JS实现点击复选框将按钮或文本框变为灰色不可用的方法,涉及javascript动态修改页面元素属性的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08

最新评论