jQuery MiniUI

 找回密码
 立即注册
查看: 2383|回复: 5
打印 上一主题 下一主题

关于动态生成折叠面板组 即mini.OutlookBar的问题 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2018-7-4 11:16:50 |只看该作者 |倒序浏览
左边导航的面板采用outlookBar制作,由于导航目录很多需要动态生成。
function test(){
    var list = [];
    var obj = {
        bodyCls : "",
        bodyStyle : "",
        cls : "",
        enabled : "true",
        expanded : "true",
        headerCls : "",
        headerStyle : "color:red;font-size:15px;font-weight:normal;",
        iconCls : "icon-add",
        iconStyle : "",
        name : "",
        showCollapseButton : "true",
        style : "",
        title : "权限管理",
        visible : true
    };
    var obj1 = {
        bodyCls : "",
        bodyStyle : "",
        cls : "",
        enabled : "true",
        expanded : "true",
        headerCls : "",
        headerStyle : "color:red;font-size:15px;font-weight:normal;",
        iconCls : "icon-add",
        iconStyle : "",
        name : "",
        showCollapseButton : "true",
        style : "",
        title : "用户管理",
        visible : true
    };
    list.push(obj);
    list.push(obj1);
    mini.get("leftTree").setGroups(list);
}但是这样子只是生成了一级的面板,我需要在一级的面板的内容区添加二级目录,请问大神要怎么操作

Rank: 8Rank: 8

沙发
发表于 2018-7-4 11:47:46 |只看该作者
outlookbar.getGroupBodyEl ( index )可以按序号获取各面板body区域的dom元素,可以放任意内容

Rank: 2

板凳
发表于 2018-7-4 14:20:45 |只看该作者
felt 发表于 2018-7-4 11:47
outlookbar.getGroupBodyEl ( index )可以按序号获取各面板body区域的dom元素,可以放任意内容 ...

那要弄一个三级目录四级目录也是这样一个个获取然后再innerHTML嘛?有没有其他快捷的方法

Rank: 8Rank: 8

地板
发表于 2018-7-4 15:08:30 |只看该作者
lynze 发表于 2018-7-4 14:20
那要弄一个三级目录四级目录也是这样一个个获取然后再innerHTML嘛?有没有其他快捷的方法 ...

outlookbar就是单级结构,我们不管你内部放什么。

Rank: 2

5#
发表于 2018-7-4 15:41:41 |只看该作者
felt 发表于 2018-7-4 15:08
outlookbar就是单级结构,我们不管你内部放什么。

<div id="leftTree" class="mini-outlookmenu" onitemselect="onNodeSelect" idField="id" parentField="pid" textField="text">
                    </div>

function test(nodes){
            var menus = [
                { id: "user", text: "用户管理", iconCls: "icon-add"},
                { id: "addUser", pid: "user", text: "增加用户", iconCls: "icon-add", url: "../datagrid/celledit.html" },
                { id: "editUser", pid: "user", text: "修改用户", iconCls: "icon-edit", url: "../datagrid/rowedit.html" },
                { id: "removeUser", pid: "user", text: "删除用户", iconCls: "icon-remove", url: "../datagrid/datagrid.html" },

                { id: "right", text: "权限管理"},
                { id: "addRight", pid: "right", text: "查询权限", iconCls: "Note", url: "../tree/detailgrid.html", iconPosition: "top" },
                { id: "editRight", pid: "right", text: "操作权限", iconCls: "Reports", url: "../buttonedit/selectGrid.html", iconPosition: "top" }
            ];
            mini.get("leftTree").load(menus);
        }

为什么我试了生成的子目录不会包含在父级目录里面
变成了这样的

Rank: 8Rank: 8

6#
发表于 2018-7-4 16:39:51 |只看该作者
lynze 发表于 2018-7-4 15:41
function test(nodes){
            var menus = [
                { id: "user ...

请参考我们提供的API来使用
outlookmenu我们提供了2种js加载数据的方法,对应你的数据格式的不同,应使用不同的方法
loadData(data)    //接收树形数据  由children字段包含子节点
loadList(data,idField,PidField)   //接收列表数据,由id和pid对应关系形成父子关系

你这数据不是树形,请使用loadList方法

Archiver|普加软件

GMT+8, 2024-10-7 18:28 , Processed in 1.069470 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部