java adminlte 使用_AdminLTE实现动态菜单

前言

本篇内容基于上一篇AdminLTE实现局部刷新,在完成局部刷新后,不满足其左侧菜单栏的写死状态,希望后期能从数据库读取动态生成,故有了本篇尝试。

2694b2a630da91ff3d66aae7f4920420.png

正文

目前依旧是在adminlte.js中做的修改。

菜单JSON样式

var menuJson=[{

"name": "用户管理",

"controller":"#",

"child": [{

"name": "用户概览",

"controller":"user/home.do",

},{

"name": "添加用户",

"controller":"user/add.do",

}]

},{

"name": "文章管理",

"controller":"#",

"child": [{

"name": "文章概览",

"controller":"post/home.do",

},{

"name": "添加文章",

"controller":"post/add.do",

}]

}];

菜单初始化方法menuInit

这里面涉及到对菜单的拼接填充等操作

function menuInit() {

var menu = null;

var html = null;

var chidLen = null;

var child = null;

for (var i = 0; i < menuJson.length; i++) {

menu = menuJson[i];

if(i==0){

html = $('

');

}else{

html = $('

');

}

$(".sidebar .sidebar-menu").append(html);

html = $(' '+menu.name+'

$('[menu-id="'+i+'"]').append(html);

chidLen = menu.child.length;

for (var j=0;j

child = menu.child[j];

if(i==0&&j==0){

html = $('

'+child.name+'');

}else{

html = $('

'+child.name+'');

}

$('[menuUl-id="'+i+'"]').append(html);

}

}

$(Selector.data).each(function () {

Plugin.call($(this))

})

$(".sidebar-menu li:first ul li:first a").click();

}

菜单初始化方法menuInit调用位置

该出是替换了原本菜单的初始化方法。可通过查询 Tree Data API到达。

// Tree Data API

// =============

$(window).on('load', function () {

menuInit();

})

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值