引进文件:

 <link rel="stylesheet" type="text/css" href="Public/com/jQrgChart/jquery.jOrgChart.css">
<script src="Public/com/jQrgChart/jquery.jOrgChart.js"></script>

HTML:

 <div id='jOrgChart'></div>//容器

js:

 //自己项目(动态添加,逐条添加)
<script type="text/javascript">
$(function(){
Getjiedian();
})
var arr = [];
function Getjiedian(){
$.get(location.href,function(data){
var showlist = $("<ul id='org' style='display:none'></ul>");
arr.push(data.info);
showall(arr, showlist);
$("#jOrgChart").append(showlist);
$("#org").jOrgChart( {
chartElement : '#jOrgChart',//指定在某个dom生成jorgchart
dragAndDrop : false //设置是否可拖动
});
},"JSON")
}
function showall(infos, parent) {
$.each(infos, function(e,val) {
var li = $("<li class='li_id"+ val.id +"'></li>");
var str = "";
str += '<div class="tree" data-index="'+e+'" data-id='+val.id+'>';
str += '<div class="useImg">';
str += '<img class="middleY" src="'+val.headimgurl+'" alt="">';
str += '</div>';
str += '<p class="useName">'+val.nickname+'</p>';
str += '<p class="useNum">已审核:'+ val.num +'人</p>';
str += '</div>';
li.append("<div onclick='GetElse("+ val.id +")'>"+str+"</div>").append("<ul></ul>").appendTo(parent);
showall(val.list,$(li).children().eq(1));
});
} function GetElse(id){
var leng = $(".li_id" + id).children().eq(1).children().length;
if(leng == 0){
var vals = $(".li_id" + id).children().eq(1);
var data ={
'id':id
}
$.get("{:U('UserWx/jiedianfind')}",data,function(res){
var info = res.list;
$.each(info, function(e,val) {
var li = $("<li class='li_id"+ val.id +"'></li>");
var str = "";
str += '<div class="tree" data-index="'+e+'" data-id='+val.id+'>';
str += '<div class="useImg">';
str += '<img class="middleY" src="'+val.headimgurl+'" alt="">';
str += '</div>';
str += '<p class="useName">'+val.nickname+" "+' </p>';
str += '<p class="useNum">已审核:'+ val.num +'人</p>';
str += '</div>';
li.append("<div onclick='GetElse("+ val.id +")';>"+str+"</div>").append("<ul></ul>").appendTo(vals);
})
        //重置显示容器
var htmls = $("#org");
$("#jOrgChart").html("");
$("#jOrgChart").append(htmls);
$("#org").jOrgChart( {
chartElement : '#jOrgChart',
dragAndDrop : false
});
},"JSON")
}else if(leng == 1){ }else{ }
}
</script>

参考:https://www.cnblogs.com/liboxncg/p/6249752.html

json数据:

 {
"data": [{
"id": 1,
"name": "企业主体信用得分",
"pid": null,
"childrens": [
{
"id": 2,
"name": "企业素质",
"pid": 1,
"childrens": [
{
"id": 5,
"name": "基本信息",
"pid": 2,
"childrens": [
{
"id": 10,
"name": "企业主体信息识别",
"pid": 5,
"childrens": [
]
},
{
"id": 11,
"name": "企业持续注册时间",
"pid": 5,
"childrens": [
]
},
{
"id": 12,
"name": "注册资本",
"pid": 5,
"childrens": [
]
}
]
},
{
"id": 6,
"name": "管理认证",
"pid": 2,
"childrens": [
{
"id": 13,
"name": "国际性管理认证",
"pid": 6,
"childrens": [
]
}
]
}
]
},
{
"id": 3,
"name": "履约记录",
"pid": 1,
"childrens": [
{
"id": 7,
"name": "税务执行情况",
"pid": 3,
"childrens": [
{
"id": 14,
"name": "是否按时缴纳税款",
"pid": 7,
"childrens": [
]
}
]
},
{
"id": 8,
"name": "网贷情况",
"pid": 3,
"childrens": [
{
"id": 15,
"name": "网贷逾期",
"pid": 8,
"childrens": [
]
}
]
}
]
},
{
"id": 4,
"name": "公共监督",
"pid": 1,
"childrens": [
{
"id": 9,
"name": "行政处罚",
"pid": 4,
"childrens": [
{
"id": 16,
"name": "处罚信息",
"pid": 9,
"childrens": [
]
}
]
}
]
}
]
}
]
}
<script type='text/javascript'>
$(function(){
//数据返回
$.ajax({
url: "test.json",
type: 'GET',
dataType: 'JSON',
data: {action: 'org_select'},
success: function(result){
var showlist = $("<ul id='org' style='display:none'></ul>");
showall(result.data, showlist);
$("#jOrgChart").append(showlist);
$("#org").jOrgChart( {
chartElement : '#jOrgChart',//指定在某个dom生成jorgchart
dragAndDrop : false //设置是否可拖动
}); }
});
}); function showall(menu_list, parent) {
$.each(menu_list, function(index, val) {
if(val.childrens.length > 0){ var li = $("<li></li>");
li.append("<a href='javascript:void(0)' onclick=getOrgId("+val.id+");>"+val.name+"</a>").append("<ul></ul>").appendTo(parent);
//递归显示
showall(val.childrens, $(li).children().eq(1));
}else{
$("<li></li>").append("<a href='javascript:void(0)' onclick=getOrgId("+val.id+");>"+val.name+"</a>").appendTo(parent);
}
}); } </script>

jOrgChart二叉树效果的更多相关文章

  1. BTree和B+Tree 简单区别

    本篇作用于各种树之间的区别,非算法详细介绍,只是给我们这种非科班出身的一种大概的印象,现在网上更多是讲各种树的怎么实现的细节问题,本篇不涉及那么高深,如果详细了解可以查阅他人的资料,很多大神已经说的很 ...

  2. 关于Mongodb的全面总结

    MongoDB的内部构造<MongoDB The Definitive Guide> MongoDB的官方文档基本是how to do的介绍,而关于how it worked却少之又少,本 ...

  3. 使用jOrgChart插件实现组织架构图的展示

    项目要做组织架构图,要把它做成自上而下的树形结构. 一.说明 (1)通过后台查询数据库,生成树形数组结构,返回到前台. (2)需要引入的js插件和css文件: ①jquery.jOrgChart.cs ...

  4. PAT树_层序遍历叶节点、中序建树后序输出、AVL树的根、二叉树路径存在性判定、奇妙的完全二叉搜索树、最小堆路径、文件路由

    03-树1. List Leaves (25) Given a tree, you are supposed to list all the leaves in the order of top do ...

  5. 《数据结构与算法分析》学习笔记(五)——二叉树

    (一)查找二叉树ADT 1.二叉查找树ADT性质:     对于树中的每个节点X,它的左子树中所有关键字值都小于X的关键字值,而它的右子树值的关键字值都大于X的关键字值. 2.一些ADT的基本操作 结 ...

  6. python数据结构与算法——二叉树结构与遍历方法

    先序遍历,中序遍历,后序遍历 ,区别在于三条核心语句的位置 层序遍历  采用队列的遍历操作第一次访问根,在访问根的左孩子,接着访问根的有孩子,然后下一层 自左向右一一访问同层的结点 # 先序遍历 # ...

  7. C语言实现二叉树-04版

    二叉树,通常应当是研究其他一些复杂的数据结构的基础.因此,通常我们应该精通它,而不是了解:当然,可能并不是每个人都认同这种观点,甚至有些人认为理解数据结构就行了!根本没有必要去研究如何实现,因为大多数 ...

  8. C语言实现二叉树-03版

    我们亲爱的项目经理真是有创意,他说你给我写得二叉树挺好的: 功能还算可以:插入节点,能够删除节点: 可是有时候我们只是需要查找树的某个节点是否存在: 所以我希望你能够给我一个find功能: 还有就是, ...

  9. C语言实现二叉树-02版

    ---恢复内容开始--- 昨天,提交完我们的二叉树项目后,今天早上项目经理早早给我打电话: 他说,小伙子干的不错.但是为什么你上面的insert是recusive的呢? 你难道不知道万一数据量大啦!那 ...

随机推荐

  1. (二)文档请求不同源之flash跨域

    对于FLash,IE是认object标签的,但是FF和Chrome是认embed标签的. 1.客户端 <param name="allowScriptAccess" valu ...

  2. windows安装nexus3

    1.下载nexus3 https://www.sonatype.com/download-oss-sonatype 2.解压文件D:\javatool\ 3.在path中配置环境变量 D:\javat ...

  3. composer install 时遇到 Composer\Downloader\TransportException ...

    安装错误 [Composer\Downloader\TransportException] Invalid credentials for 'https://packagist.phpcomposer ...

  4. Hadoop错误之namenode宕机的数据恢复

    情景再现: 在修复hadoop集群某一个datanode无法启动的问题时,搜到有一个答案说要删除hdfs-site.xml中dfs.data.dir属性所配置的目录,再重新单独启动该datanode即 ...

  5. window 日志清楚

    @echo offset srcDir="D:\ApplicationLogs"set daysAgo=15forfiles /p %srcDir% /s /m *.* /d -% ...

  6. 课堂笔记及知识点----树(2018/10/24(pm))

    树 概念:由一个或多个(n≥0)结点组成的有限集合 T, 有且仅有一个结点称为根( root), 当 n>1时,其余的结点分为 m(m≥0)个互不相交的有限集合 T1,T2, …, Tm.每个集 ...

  7. 记录C#中的扩展方法

    C#中的扩展方法. 系统自带的类型,我们无法去修改: 修改源代码需要较大的精力,而且可能会带来错误: 我们只是需要一个或者较少的几个方法,修改源代码费时费力: 被扩展的类是sealed的,不能被继承: ...

  8. linux --- Ansible-playbook篇

    Ansible-playbook简介 什么是playbook? 简单点说,playbook就是ansible用于配置,部署和管控节点机器的剧本,将一系列命令的集合归一使用,类似于shell脚本,不过更 ...

  9. 记录智能合约solidity编译的坑

    在Linux环境下入门写一段solidity编译遇到error和warning,经过一番研究后才得其缘由,下面以一段demo总结一下. pragma solidity ^; // 指定所需的编译器版本 ...

  10. Python全局变量和局部变量相关知识点

    知识点一: #在函数外面定义的变量叫全局变量 num = 100 def AAA(): ''' 如果在函数中直接修改全局变量,那么会产生异常 如果真的需要修改,可以在函数中进行声明(前面加入globa ...