最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用layui+ajax實現(xiàn)簡單的菜單權(quán)限管理及排序的方法

 更新時間:2019年09月10日 16:40:42   作者:Inverse_fang  
今天小編就為大家分享一篇使用layui+ajax實現(xiàn)簡單的菜單權(quán)限管理及排序的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

**簡單的例子使用的layui框架,并沒有使用他的ztree插件,只用ajax配合sql完成最簡單的一二級菜單權(quán)限控制及其排序功能。

先看數(shù)據(jù)庫設計:**

user表:

role表:

menu表:

user_role表:

role_menu表:

在這里 menu的id依然是主鍵,多了mid也就是菜單id,pare_menu_id也就是這個菜單對應的父級菜單的菜單id(mid);沒有的話,就是0,也就是一級菜單,在這里,一級菜單的mid必須滿足為整千數(shù),或者萬也行,其子菜單在mid+999范圍內(nèi);

sql查詢結(jié)果:

前臺數(shù)據(jù)處理方法:

//菜單循環(huán)遍歷打印拼接操作
  $(function () {
  $.ajax( {
   url : projectName+'/sys/menu/findMenuByRole',
   type : 'post',
   dataType : 'json',
   success : function(data) {
   var menu = ""; //定義變量存儲
   for(var i = 0;i<data.length;i++){
    menu += "<li class='layui-nav-item '>"
    if(data[i].pareMenuId == 0){ //取出父元素的菜單,拼進頁面
    menu += "<a href='javascript:;'>"+data[i].menuName+"</a>"
    for(var j = 0;j<data.length;j++){ //繼續(xù)遍歷這幾條數(shù)據(jù)
     if(data[j].mid > data[i].mid && data[j].mid < (data[i].mid)+1000){ //取出這個父元素所對應的子元素
     menu += "<dl class='layui-nav-child'>"
     menu += "<dd>"
     menu +=  "<a href='"+data[j].menuPath+"' target='option'>"+'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'+data[j].menuName+"</a>"
     menu += "</dd>"
     menu += "</dl>"
     }
    }
    }
    menu += "</li>";
   }
   $("#nav").html(menu);
   var element = layui.element;
   element.init()//初始化element事件,使菜單展開
   }
  });
  })

效果如下:

圖1是默認排序

下面我們將用戶管理放在第一位??磮D

將order設置為一結(jié)果如圖:

這樣用戶管理就去了第一位;

sql實現(xiàn):


 SELECT
  t1.*
  FROM
  (
  SELECT
   sys_menu.id,
   sys_menu.mid,
   sys_menu.menu_name,
   sys_menu.menu_path,
   sys_menu.pare_menu_id,
   sys_menu.`status`,
   sys_menu.`order`,
   abc.`status` AS status2
  FROM
   sys_menu
  INNER JOIN (
   SELECT
   *
   FROM
   role_menu
   WHERE
   id IN (
    SELECT
    min(id)
    FROM
    role_menu
    GROUP BY
    role_id,
    menu_id
   )
   AND role_menu.`status` = 1
  ) abc ON abc.menu_id = sys_menu.id
  INNER JOIN sys_role ON sys_role.id = abc.role_id
  INNER JOIN user_role ON user_role.role_id = sys_role.id
  INNER JOIN sys_user ON sys_user.id = user_role.user_id
  WHERE
   sys_user.id = #{id}
  AND sys_menu.`status` = 1
  ORDER BY
   mid
  ) t1
 ORDER BY
  t1.pare_menu_id,
  t1.`order`;

**上圖#{id}就是用戶的id,多表關聯(lián)查詢就可以了;(因為用的是sm框架單純的springMvc+mybatis+html)

關于權(quán)限,當然不同用戶看到的東西不同;至于菜單的權(quán)限,我是在role_menu表中加了status,默認都是0;admin用戶的都是1;因為如果是角色的菜單授權(quán)很麻煩;干脆都給他賦予權(quán)限,之不過狀態(tài)這里給她控制一下就可以了,也就是添加一個菜單,就給這個表每個角色添加一條數(shù)除admin其余為status=0;**

以上這篇使用layui+ajax實現(xiàn)簡單的菜單權(quán)限管理及排序的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • JavaScript中null與undefined分析

    JavaScript中null與undefined分析

    JavaScript null undefined分析
    2009-07-07
  • JS實現(xiàn)倒計時和文字滾動的效果實例

    JS實現(xiàn)倒計時和文字滾動的效果實例

    這篇文章主要介紹了JS實現(xiàn)倒計時和文字滾動的效果,以實例的形式分析了倒計時與文字滾動效果的具體實現(xiàn)方法,并附有js時間變量的說明,非常具有實用價值,需要的朋友可以參考下
    2014-10-10
  • JavaScript創(chuàng)建對象的常用方式總結(jié)

    JavaScript創(chuàng)建對象的常用方式總結(jié)

    這篇文章主要介紹了JavaScript創(chuàng)建對象的常用方式,結(jié)合實例形式總結(jié)分析了javascript面向?qū)ο蟪绦蛟O計中對象創(chuàng)建的常見方式、相關操作技巧與注意事項,需要的朋友可以參考下
    2018-08-08
  • 詳解JS設計模式之橋接模式用法

    詳解JS設計模式之橋接模式用法

    javascript橋接橋接設計模式(Bridge Pattern)是一種結(jié)構(gòu)型設計模式,它用于將抽象部分與其具體實現(xiàn)部分分離,使它們可以獨立地變化,本文將通過代碼示例詳解的給大家介紹一下JS橋接模式,需要的朋友可以參考下
    2023-08-08
  • 微信小程序列表中item左滑刪除功能

    微信小程序列表中item左滑刪除功能

    這篇文章主要介紹了微信小程序列表中item左滑刪除功能,本文分步驟給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-11-11
  • 使用JavaScript監(jiān)視有沒有被刷新后跳轉(zhuǎn)其他頁面

    使用JavaScript監(jiān)視有沒有被刷新后跳轉(zhuǎn)其他頁面

    這篇文章主要為大家詳細介紹了如何使用JavaScript監(jiān)視有沒有被刷新后跳轉(zhuǎn)其他頁面,文中的示例代碼講解詳細,感興趣的小伙伴可以參考一下
    2025-01-01
  • Javascript 作用域使用說明

    Javascript 作用域使用說明

    在傳統(tǒng)的面向?qū)ο蟪绦蛟O計中,主要關注于公用和私有作用域。公用作用域中的對象屬性可以從對象外部訪問,即開發(fā)者創(chuàng)建對象的實例后,就可使用它的公用屬性。
    2009-08-08
  • three.js實現(xiàn)炫酷的全景3D重力感應

    three.js實現(xiàn)炫酷的全景3D重力感應

    這篇文章主要為大家詳細介紹了three.js實現(xiàn)炫酷的全景3D重力感應,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • javascript框架設計讀書筆記之種子模塊

    javascript框架設計讀書筆記之種子模塊

    本文是司徒正美的《javascript框架設計》一書第一章種子模塊的讀書筆記,記錄了一下自認為比較重要的東西,分享給大家
    2014-12-12
  • 優(yōu)化javascript的執(zhí)行速度

    優(yōu)化javascript的執(zhí)行速度

    這個是我在網(wǎng)上找的資料,具體的出處,我已經(jīng)記不清楚了,覺得很不錯,就和大家分享了
    2010-01-01

最新評論

阳高县| 承德市| 永清县| 汨罗市| 中宁县| 日土县| 建瓯市| 田东县| 北流市| 林周县| 井研县| 江安县| 广元市| 庆元县| 塔河县| 肥城市| 钟祥市| 土默特左旗| 敦化市| 榆树市| 泸水县| 饶平县| 长兴县| 永嘉县| 海淀区| 海原县| 泰宁县| 平遥县| 合山市| 车致| 从江县| 阳谷县| 东丰县| 和平县| 九台市| 金堂县| 公主岭市| 会同县| 禄丰县| 明水县| 潼关县|