• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >编程问答 > js怎样将获取json转换为树形结构

js怎样将获取json转换为树形结构

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-07

佚名通过本文主要向大家介绍了js树形结构,js树形结构代码,js横向树形结构,js实现树形结构,js树形菜单等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:js怎样将获取json转换为树形结构
描述:

比如这样一段json

{
    "name": "1级菜单1",
    "link": "###",
    "isleaf": false,
    "level": 0,
    "children": [
        {
            "name": "2级菜单1",
            "link": "###",
            "isleaf": false,
            "level": 1,
            "children": [
                {
                    "name": "3级菜单1",
                    "link": "###",
                    "isleaf": true,
                    "level": 2,
                    "children": null
                },
                {
                    "name": "3级菜单2",
                    "link": "###",
                    "isleaf": true,
                    "level": 2,
                    "children": null
                }
            ]
        },
        {
            "name": "2级菜单2",
            "link": "###",
            "isleaf": false,
            "level": 1,
            "children": [
                {
                    "name": "3级菜单3",
                    "link": "###",
                    "isleaf": true,
                    "level": 2,
                    "children": null
                }
            ]
        }
    ]
}

我怎样把他转换成

<div>
    <a href="###">一级菜单</a>
    <ul>
        <li>
            <a>2级菜单1</a>
            <ul>
                <li><a href="###">3级菜单1</a></li>
                <li><a href="###">3级菜单2</a></li>
            </ul>
        </li>
        <li>
            <a href="###">2级菜单2</a>
            .......
        </li>
    </ul>
</div>

解决方案1:

建议下载个jQuery EASYUI的API里面有关于树的解释,很清楚的
http://www.cnblogs.com/Philoo/archive/2011/11/17/jeasyui_api_index.htm...

解决方案2:

http://stackoverflow.com/questions/8553539/jquery-json-looping-through...

解决方案3:

下面的代码render是主函数,用来render你提供的json数据,它调用了renderMenu函数。

javascriptfunction renderMenu(menu, parent) {
    var el = $('<a href="' + menu.link  +'">' + menu.name + '</a>');
    $(parent).append(el);
    if (menu.isleaf) {
        return parent;
    }

    var ul = $('<ul/>');
    for (var i = 0; i < menu.children.length; ++i) {
        var li = $('<li/>');
        renderMenu(menu.children[i], li);
        ul.append(li);
    }

    $(parent).append(ul);
    return parent;
}

function render(json) {
    var div = $('

<div/>

');
    return renderMenu(json, div);
}

var json = // 你的那段json代码
var menu = render(json);

在浏览器中检查menu显示如下:
json,json 树形数据,java json 树形结构,json 树形结构 遍历,json 树形,json 树,dtree,json 树形菜单,java构造json树形结

如果您觉得回答有帮助,就点个赞呗:-)


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • js怎样将获取json转换为树形结构

相关文章

  • 2017-06-07 python多线程中为什么要用for遍历所有线程然后依次调用join?
  • 2017-06-07 vs2010找不见移动web
  • 2017-06-07 七牛云存储自动分配给我的默认域名不能访问
  • 2017-06-07 在django中,如何使用字符串作为对象名来调用model?
  • 2017-06-07 在flask应用中使用celery任务队列,celery队列无法正常启动
  • 2017-06-07 Mac开发中使用汇编提取内存内容
  • 2017-06-07 七牛,有备份机制吗?
  • 2017-06-07 Java怎样获取浏览器用户设置的语言
  • 2017-06-07 Python-Sphinx的这种rst语法叫做什么自定义??
  • 2017-06-07 picklepython怎样用pickle保存类的实例?

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • python中paramiko模块引入问题
    • 七牛iOSSDK708如何取消正在上传的任务?
    • 杯具的Github~
    • 谁能帮忙解答下
    • python排序
    • 正则表达式查找前后不是数字的小数点?
    • 二叉树二叉树的疑惑
    • 求jbpm-jpdl-suite-323的下载首页
    • python爬虫用Python爬网页需要了解什么背景知识?
    • django项目布局

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有