zoukankan      html  css  js  c++  java
  • 递归菜单的通用循环方法

     /*导航菜单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>
  • 相关阅读:
    jq 判断单选是否选中
    C# Split 分隔符为字符串及空格的处理
    MSSQL中的bit类型
    js 判断textarea 不为空
    [转]C#中out 及 ref 区别
    [转]asp.net中时间差的问题
    [转]C# Array 数组 及 一些操作
    Addr、@运算符与Pointer类型
    关于Pascal语言中的分号
    关于以后的文章
  • 原文地址:https://www.cnblogs.com/dullbaby/p/5981552.html
Copyright © 2011-2022 走看看