系统在public/assets/js/backend/index.js里面定义了刷新菜单的事件
//刷新菜单事件
$(document).on('refresh', '.sidebar-menu', function () {
Fast.api.ajax({
url: 'index/index',
data: {action: 'refreshmenu'},
loading: false
}, function (data) {
$(".sidebar-menu li:not([data-rel='external'])").remove();
$(".sidebar-menu").prepend(data.menulist);
if (multiplenav) {
firstnav.html(data.navlist);
}
$("li[role='presentation'].active a", nav).trigger('click');
$(window).trigger("resize");
return false;
}, function () {
return false;
});
});
因为我自己写了个刷新角标小红点的方法,所以在里面加了一句:
//刷新菜单事件
$(document).on('refresh', '.sidebar-menu', function () {
Fast.api.ajax({
url: 'index/index',
data: {action: 'refreshmenu'},
loading: false
}, function (data) {
$(".sidebar-menu li:not([data-rel='external'])").remove();
$(".sidebar-menu").prepend(data.menulist);
if (multiplenav) {
firstnav.html(data.navlist);
}
$("li[role='presentation'].active a", nav).trigger('click');
$(window).trigger("resize");
reloadmassage();//刷新菜单的同时更新小红点
return false;
}, function () {
return false;
});
});
其次,如果你想点击switch开关,实时刷新菜单的小红点状态,那么要在对应控制器的js文件(public/assets/js/backend/**********.js)里面添加如下事件代码:
api: {
bindevent: function () {
Form.api.bindevent($("form[role=form]"));
}
},
};
//代码开始》》》》》》
// 点击multi按钮事件
$(document).on("click", ".btn-change", function () {
console.log('已点击审核开关');
Backend.api.refreshmenu(); //刷新菜单
});
// 点击删除按钮事件
$(document).on("click", ".btn-delone", function () {
console.log('已点击删除按钮');
Backend.api.refreshmenu(); //刷新菜单
});
// 点击驳回按钮事件
$(document).on("click", ".btn-embossed", function () {
console.log('已点击驳回按钮');
Backend.api.refreshmenu(); //刷新菜单
});
//代码结束》》》》》》
Form.api.bindevent($("form[role=form]"));
return Controller;
});