• 递归菜单的通用循环方法


     /*导航菜单begin====================*/
            //导航一级菜单
            var accordionJson = "";
            function GetAccordionMenu() {
                var html = "";
                getAjax("/Home/LoadAccordionMenu", "", function (data) {
                    accordionJson = eval("(" + data + ")");
                    $.each(accordionJson, function (i) {
                        if (accordionJson[i].ParentId == '9f8ce93a-fc2d-4914-a59c-a6b49494108f') {
                            html += "<li title=" + accordionJson[i].FullName + ">";
                            html += "<div class="link"><img src='../Content/Images/Icon16/" + accordionJson[i].Icon + "'>";
                            html += "<span>" + accordionJson[i].FullName + "</span><i class="chevron-down"></i>";
                            html += "</div>";
                            html += GetSubmenu(accordionJson[i].ModuleId, "b-children");
                            html += "</li>";
                        }
                    });
                })
                $("#accordion").append(html);
            }
            //导航子菜单
            function GetSubmenu(ModuleId, _class) {
                var submenu = "<ul class="submenu " + _class + "">";
                $.each(accordionJson, function (i) {
                    if (accordionJson[i].ParentId == ModuleId) {
                        if (IsBelowMenu(accordionJson[i].ModuleId) > 0) {
                            submenu += "<li title=" + accordionJson[i].FullName + "><a class="link"><img src='../Content/Images/Icon16/" + accordionJson[i].Icon + "'><span>" + accordionJson[i].FullName + "</span><i class="submenu-chevron-down"></i></a>";
                            submenu += GetSubmenu(accordionJson[i].ModuleId, "c-children")
                            submenu += "</li>";
                        } else {
                            submenu += "<li title=" + accordionJson[i].FullName + " onclick="AddTabMenu('" + accordionJson[i].ModuleId + "', '" + RootPath() + accordionJson[i].Location + "', '" + accordionJson[i].FullName + "',  '" + accordionJson[i].Icon + "','true');linkAddTabMenu()"><img src='../Content/Images/Icon16/" + accordionJson[i].Icon + "'><a><span>" + accordionJson[i].FullName + "</span></a></li>";
                        }
                    }
                });
                submenu += "</ul>";
                return submenu;
            }
            //判断是否有子节点
            function IsBelowMenu(ModuleId) {
                var count = 0;
                $.each(accordionJson, function (i) {
                    if (accordionJson[i].ParentId == ModuleId) {
                        count++;
                        return false;
                    }
                });
                return count;
            }
            /*导航菜单end====================*/
        </script>
  • 相关阅读:
    前端异常上报
    前端异常解析:Source Map
    前端操作剪切板不完全指北
    多系统之间模块相互引用的引发的深思
    浅谈vue原理(四)
    浅谈vue原理(三)
    浅谈vue原理(二)
    浅谈vue原理(一)
    vue中路由嵌套的作用
    常用的学习网站和小工具
  • 原文地址:https://www.cnblogs.com/dullbaby/p/5981552.html
Copyright © 2020-2023  润新知