创建异步树形菜单

  1. 创建树形菜单的ul标签

    <ul class="easyui-tree" id="treeMenu">
    </ul>
  2. 写js代码,对菜单的ul标签元素使用tree函数
    $(function(){
    $('#treeMenu').tree({
    url:'tree_data.json' //url的值是异步获取数据的页面地址
    });
    });
  3. 写用来异步获取数据的php页面(tree_data.json页面)。
    返回的需是Json值(此处用数组代替从数据库获取的数据,以省略连接数据库过程)
    $result = [];
    
    //节点一
    $prodArr = [
    "id" => ,
    "text" => "商品管理",
    "state" => "open",
    "children" => [
    [
    "id" => ,
    "text" => "添加商品",
    "state" => "open",
    "attributes" => [
    "url" => "http://abc.com/test.php"
    ]
    ],
    [
    "id" => ,
    "text" => "修改商品",
    "state" => "open",
    "attributes" => [
    "url" => "http://abc.com/test2.php"
    ]
    ]
    ]
    ]; //节点二
    $newsArr = [
    "id" => ,
    "text" => "新闻管理",
    "state" => "open",
    "children" => [
    [
    "id" => ,
    "text" => "添加新闻",
    "state" => "open"
    ],
    [
    "id" => ,
    "text" => "修改新闻",
    "state" => "open"
    ]
    ]
    ]; //节点三
    $userArr = [
    "id" => ,
    "text" => "用户管理",
    "state" => "open",
    "children" => [
    [
    "id" => ,
    "text" => "添加用户",
    "state" => "open"
    ],
    [
    "id" => ,
    "text" => "修改用户",
    "state" => "open"
    ]
    ]
    ]; Array_push($result, $prodArr, $newsArr, $userArr);
    echo json_encode($result);

    说明:
    节点的属性:
    id:节点ID,可以作为参数来异步向页面地址获取子节点数据
    text:节点文本
    state:节点状态。取值为open(缺省默认值)或close。当设置为close时,会自动异步获取子节点的数据
    checked:指明节点是否被选中。
    attributes:自定义属性
    children:以数组的形式包含子节点       (更多细节知识可查看easyui官网中tree知识点)

到这,异步树形菜单就完成了。

动态添加标签页tab

  1. 创建用来包裹标签页tab的外层标签

    <div id="contentTabs" class="easyui-tabs" style="width:100%;height:100%;">
    </div>
  2. 在js中定义addTab函数
    function addTab(title, url){
    if ($('#contentTabs').tabs('exists', title)){
    $('#contentTabs').tabs('select', title);
    } else {
    var content = '<iframe scrolling="auto" frameborder="0" src="'+url+'" style="width:100%;height:100%;"></iframe>';
    $('#contentTabs').tabs('add',{
    title:title,
    content:content,
    closable:true
    });
    }
    }
  3. 在树形菜单的点击事件函数中调用addTab函数
    $(function(){
    $("#treeMenu").tree({
    onClick:function(node){
    if (node.attributes !== undefined && node.attributes.url !== undefined) {
    addTab(node.text,node.attributes.url);
    }
    }
    });
    });

最后,如图显示

EasyUI创建异步树形菜单和动态添加标签页tab的更多相关文章

  1. 雷林鹏分享:jQuery EasyUI 树形菜单 - 创建异步树形菜单

    jQuery EasyUI 树形菜单 - 创建异步树形菜单 为了创建异步的树形菜单(Tree),每一个树节点必须要有一个 'id' 属性,这个将提交回服务器去检索子节点数据. 创建树形菜单(Tree) ...

  2. ES6面向对象 动态添加标签页

    HTML <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml&quo ...

  3. EasyUI 布局 - 动态添加标签页(Tabs)

    首先导入js <link rel="stylesheet" href="../js/easyui/themes/default/easyui.css"&g ...

  4. easyui 动态添加标签页,总结

    步骤 1:创建 Tabs <div style="margin-bottom:10px"> <a href="#" class="e ...

  5. js 面向对象 动态添加标签

    有点逻辑 上代码 thml布局 点击查看代码 <!DOCTYPE html> <html lang="en"> <head> <meta ...

  6. 使用 EasyUI 创建左侧导航菜单

    使用 JQuery EasyUI 创建左侧导航菜单,菜单的数据由后台服务提供. 效果图 HTML 元素 <div id="menuAccordion"></div ...

  7. EasyUI中动态生成标签页

    这是最近学到的内容,当时是有思路但是不知道怎么获取当前的点击对象,就没有实现功能,通过更深入的学习,我知道了不仅仅是Java,Oracle中有一个this,同样的EasyUI中也存在一个this,来获 ...

  8. dtree实现动态加载树形菜单,动态插入树形菜单

    1.导入  dtree文件    dtree.css   img文件夹   dtree.js 2. 建立对应 的数据库      1      父ID     name    id 3    建立连接 ...

  9. C# 后台动态添加标签(span,div) 以及模板添加

    很多时候.我们需要在后台用C#代码添加html标签.而不是在html源码中添加. 比如在html源码中简单的一个input 标签 <input type="type" nam ...

随机推荐

  1. ThreadLocal实现方式&使用介绍—无锁化线程封闭

    原文出处: xieyu_zy 虽然现在可以说很多程序员会用ThreadLocal,但是我相信大多数程序员还不知道ThreadLocal,而使用ThreadLocal的程序员大多只是知道其然而不知其所以 ...

  2. event.srcElement ,event.fromElement,event.toElement

    自然,我们都习惯了 IE,在 IE 中要在函数中获得各事件对象很容易,直接用 event.event.srcElemtn.event.fromElement.event.toElement 就行了.在 ...

  3. Kendall’s tau-b,pearson、spearman三种相关性的区别(有空整理信息检索评价指标)

    同样可参考: http://blog.csdn.net/wsywl/article/details/5889419 http://wenku.baidu.com/link?url=pEBtVQFzTx ...

  4. duilib帮助

    1.窗口基类:见介绍 顺便贴下出来,留底. .h class WindowImplBase : public CWindowWnd, public INotifyUI, public IMessage ...

  5. java高新技术-可变参数与OverLoad相关面试题分析

    可变参数 可变参数的特点: 只能出现在参数列表的最后: ...位于变量类型和变量名之间,前后有无空格都可以: 调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法中以数组的形式访问可变参数 ...

  6. BZOJ3505 [Cqoi2014]数三角形

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转 ...

  7. phpexcel导入数据提示失败

    phpexcel导入excel时明明只有几行数据,却提示506行失败,原来是excel中有506行"无效数据"(看起来是空的,但是和没有数据不一样).

  8. VsFtpd配置文件详解

    1.默认配置:1>允许匿名用户和本地用户登陆.     anonymous_enable=YES     local_enable=YES2>匿名用户使用的登陆名为ftp或anonymou ...

  9. TypeScript Declaration Merging(声明合并)

    TypeScript中有一些独特的概念,来自需要描述JavaScript对象类型发生了哪些变化.举个例子,最为独特的概念就是"声明合并".理解了这个概念将会对你在当前JavaScr ...

  10. 在WildFly中运行多个standalone模式的实例

      WildFly作为一款优秀的EJB容器,其前身为JBoss AS.JBoss作为一款开源的应用服务器,被广泛的应用在各种项目当中.假设我们现在有这样一个项目,他是以standalone的模式运行在 ...