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

JS無(wú)限級(jí)導(dǎo)航菜單實(shí)現(xiàn)方法

 更新時(shí)間:2019年01月05日 10:42:52   作者:丶Melody  
今天小編就為大家分享一篇關(guān)于JS無(wú)限級(jí)導(dǎo)航菜單實(shí)現(xiàn)方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

這里使用layui渲染的導(dǎo)航

實(shí)體類(lèi)

dept.java

private int id; //id
  private String dept_name;  //部門(mén)名稱(chēng)
  private int pid;  //上級(jí)部門(mén)id
  private int sort_num;  //排序值
  private int create_id; //創(chuàng)建人
  private String create_time; //創(chuàng)建時(shí)間
  private int modify_id; //修改人
  private String modify_time; //最后修改時(shí)間
  private int is_del; // 是否刪除 0 未刪除 1 已刪除
  private int status; //status
  private String remark; //remark
  private List<Dept> deptChild = new ArrayList<>(); //部門(mén)迭代

DeptMapper.java

List<Dept> selectDeptForJsonMenu();

DeptMapper.xml

<resultMap type="com.ys.entity.Dept" id="deptFirst">
    <result column="id" property="id" javaType="java.lang.Integer" />
    <result column="dept_name" property="dept_name" javaType="java.lang.String" />
    <result column="sort_num" property="sort_num" javaType="java.lang.Integer" />
    <result column="create_time" property="create_time" javaType="java.lang.String" />
    <result column="modify_id" property="modify_id" javaType="java.lang.Integer" />
    <result column="modify_time" property="modify_time" javaType="java.lang.String" />
    <result column="is_del" property="is_del" javaType="java.lang.Integer" />
    <result column="status" property="status" javaType="java.lang.Integer" />
    <result column="remark" property="remark" javaType="java.lang.String" />
    <collection column="id" property="deptChild" javaType="java.util.ArrayList" select="selectDeptForJsonMenuChild"/>
  </resultMap>
  <!-- 查詢(xún)部門(mén)菜單樹(shù) -->
  <select id="selectDeptForJsonMenu" resultMap="deptFirst">
    SELECT * FROM sys_dept WHERE pid = 0 AND is_del = 0 ORDER BY sort_num
  </select>
  <select id="selectDeptForJsonMenuChild" resultMap="deptFirst" parameterType="java.lang.Integer">
    select * FROM sys_dept where pid = #{id} AND is_del = 0 ORDER BY sort_num
  </select>

DeptService.java

public List<Dept> selectDeptForJsonMenu(){
    return mapper.selectDeptForJsonMenu();
  }

DeptController.java

@RequestMapping(value = "selectDeptForJsonMenu",method={RequestMethod.GET,RequestMethod.POST})
  @ResponseBody
  public List<Dept> selectDeptForJsonMenu(){
    return service.selectDeptForJsonMenu();
  }

html 引入layui.js,layui.css 并加載element模塊.

<div id="leftMenu">
</div>
$(function(){
  $.ajax({
    method:'post',
    url:getPath+"dept/selectDeptForJsonMenu",
    dataType:'json',
    success:function(data){
      if(data.length > 0){
        var showlist = $('<ul class="layui-nav layui-nav-tree"></ul>');
        showall(data, showlist);
        $("#leftMenu").html(showlist);
      }else{ 
        $('#leftMenu').html('<span class="layui-btn layui-btn-primary" id="add">添加</span>') ; 
      }
    }
  });
  //json為json數(shù)據(jù)
  //parent為最終html拼接內(nèi)容
  function showall(json, parent) {
    for (var i in json) {
      //有子節(jié)點(diǎn) 遍歷
      if (json[i].deptChild.length > 0) {
        //創(chuàng)建li
        var li = $('<li class="layui-nav-item layui-nav-itemed"></li>');
        $(li).append('<a href="javascript:;" rel="external nofollow" rel="external nofollow" >'+json[i].dept_name+'</a>');
        $(li).append('<ul class="layui-nav-child"></ul>').appendTo(parent);
        //將UL選中 回調(diào)
        showall(json[i].deptChild, $(li).children().eq(1));
      }
      //無(wú)子級(jí)
      else {
        $('<li></li>').append('<a href="javascript:;" rel="external nofollow" rel="external nofollow" >'+json[i].dept_name+'</a>').appendTo(parent);
      }
    }
  }
});

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • JavaScript獲取時(shí)區(qū)實(shí)現(xiàn)過(guò)程解析

    JavaScript獲取時(shí)區(qū)實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了JavaScript獲取時(shí)區(qū)實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • js將URL網(wǎng)址轉(zhuǎn)為16進(jìn)制加密與解密函數(shù)

    js將URL網(wǎng)址轉(zhuǎn)為16進(jìn)制加密與解密函數(shù)

    這篇文章主要介紹了js將URL網(wǎng)址轉(zhuǎn)為16進(jìn)制加密與解密函數(shù),很多朋友喜歡將網(wǎng)址轉(zhuǎn)換為16進(jìn)制,網(wǎng)上實(shí)在找不到轉(zhuǎn)換為\x這樣的工具,于是手工改一下
    2020-03-03
  • JS實(shí)現(xiàn)一鍵回頂功能示例代碼

    JS實(shí)現(xiàn)一鍵回頂功能示例代碼

    一鍵回頂功能想必大家在瀏覽網(wǎng)頁(yè)時(shí)會(huì)經(jīng)常遇到吧,實(shí)現(xiàn)的方法也有很多,在本文為大家介紹下js是如何實(shí)現(xiàn)的,感興趣的朋友可以參考下
    2013-10-10
  • JS如何將秒數(shù)轉(zhuǎn)化為時(shí)分秒的形式

    JS如何將秒數(shù)轉(zhuǎn)化為時(shí)分秒的形式

    在實(shí)際工作中經(jīng)常會(huì)遇見(jiàn)把秒數(shù)轉(zhuǎn)化為時(shí)分秒的問(wèn)題,如何處理呢?下面這篇文章主要給大家介紹了關(guān)于JS如何將秒數(shù)轉(zhuǎn)化為時(shí)分秒形式的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • JavaScript獲取flash對(duì)象與網(wǎng)上的有所不同

    JavaScript獲取flash對(duì)象與網(wǎng)上的有所不同

    關(guān)于js獲取flash對(duì)象,網(wǎng)上有非常多的例子,但不是我想要的,經(jīng)測(cè)試整理,因此本文誕生了
    2014-04-04
  • Express框架Router?Route?Layer對(duì)象使用示例詳解

    Express框架Router?Route?Layer對(duì)象使用示例詳解

    這篇文章主要為大家介紹了Express框架Router?Route?Layer對(duì)象使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 使用Layui搭建后臺(tái)管理界面的操作方法

    使用Layui搭建后臺(tái)管理界面的操作方法

    今天小編就為大家分享一篇使用Layui搭建后臺(tái)管理界面的操作方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-09-09
  • 微信小程序?qū)崿F(xiàn)云開(kāi)發(fā)上傳文件、圖片功能

    微信小程序?qū)崿F(xiàn)云開(kāi)發(fā)上傳文件、圖片功能

    在使用小程序的過(guò)程中,在編輯個(gè)人資料時(shí),通常會(huì)面臨上傳頭像、上傳背景圖片的情況,而這個(gè)開(kāi)發(fā)過(guò)程需要怎樣實(shí)現(xiàn)呢?這篇文章主要給大家介紹了關(guān)于微信小程序?qū)崿F(xiàn)云開(kāi)發(fā)上傳文件、圖片功能的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • js+css完成網(wǎng)站的會(huì)員照片信息顯示效果

    js+css完成網(wǎng)站的會(huì)員照片信息顯示效果

    js+css完成網(wǎng)站的經(jīng)典效果,一般用于會(huì)員排行榜中,會(huì)員信息的介紹,包括照片等。
    2010-06-06
  • JavaScript獲取本機(jī)IP地址三種常用方式

    JavaScript獲取本機(jī)IP地址三種常用方式

    在瀏覽器中使用JavaScript獲取本機(jī)IP地址是不可行的,因?yàn)闉g覽器的安全策略禁止JavaScript訪(fǎng)問(wèn)這樣的信息,這篇文章主要給大家介紹了關(guān)于JavaScript獲取本機(jī)IP地址的三種常用方式,需要的朋友可以參考下
    2023-12-12

最新評(píng)論

厦门市| 塔河县| 阿拉尔市| 平南县| 互助| 长阳| 道孚县| 吐鲁番市| 汉中市| 景洪市| 新竹市| 平罗县| 长阳| 上林县| 连云港市| 兴山县| 大城县| 赫章县| 铜鼓县| 兴海县| 和平县| 镇平县| 萝北县| 泸州市| 明溪县| 修文县| 晋中市| 金溪县| 小金县| 梅河口市| 沙坪坝区| 唐山市| 金湖县| 孝昌县| 德昌县| 左云县| 蓝山县| 武胜县| 宁城县| 海门市| 平阴县|