wtt
13 小时以前 f7430b5ce170d64489ebb3bc82026a4f10745505
WebTM/views/indexMenu.html
@@ -10,8 +10,15 @@
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <link rel="stylesheet" href="../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../layuiadmin/style/admin.css" media="all">
    <script src="../layuiadmin/Scripts/jquery-3.5.1.min.js"></script>
    <script language="JavaScript">//屏蔽后退按钮
    <!--<script src="../layuiadmin/Scripts/jquery-3.5.1.min.js"></script>-->
    <script src="../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script src="../layuiadmin/layui/layui.js"></script>
    <script src="../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script src="../layuiadmin/PubCustom.js"></script>
    <script src="../layuiadmin/Scripts/json2.js"></script>
    <script language="JavaScript">
        //屏蔽后退按钮
        history.pushState(null, null, document.URL);
        window.addEventListener('popstate', function () {
            history.pushState(null, null, document.URL);
@@ -20,7 +27,21 @@
    <script>
        /^http(s*):\/\//.test(location.href) || alert('请先部署到 localhost 下再访问');
    </script>
    <style>
        /* 选项基础样式 */
        .aa {
            padding: 0 20px;
            line-height: 36px;
            cursor: pointer;
            transition: all 0.3s;
            color: #000 !important; /* 强制黑色字体 */
        }
            /* 悬停状态 */
            .aa:hover {
                background-color: #f8f8f8 !important;
                color: #000 !important;
            }
    </style>
</head>
<body class="layui-layout-body">
@@ -45,11 +66,25 @@
                        </a>
                    </li>
                    <li class="layui-nav-item layui-hide-xs" lay-unselect>
                        <input type="text" placeholder="搜索..." autocomplete="off" class="layui-input layui-input-search" layadmin-event="serach" lay-action="https://www.baidu.com/s?ie=UTF-8&wd=">
                        <!--<input type="text" placeholder="搜索..." autocomplete="off" class="layui-input layui-input-search" layadmin-event="serach" lay-action="https://www.baidu.com/s?ie=UTF-8&wd=">-->
                        <div class="layui-form" style="margin-top: 5px; color: black;">
                            <!--<select name="HModePage" id="HModePage" lay-filter="HModePage" lay-search>
                            </select>-->
                            <input type="text" class="layui-input" name="HModePage" lay-verify="HModePage" id="HModePage" placeholder="搜索..." autocomplete="off">
                            <!-- 下拉容器 -->
                            <div id="dropdownMenu1" class="layui-anim layui-anim-upbit"
                                 style="display: none;position: absolute;width: 100%;max-height: 200px;overflow-y: auto;border: 1px solid #e6e6e6;background: #f8f8f8;z-index: 999;top: 40px;left: 0;">
                                <ul id="optionList1" class="layui-nav layui-nav-tree" style="width: 100%; background:white"></ul>
                            </div>
                        </div>
                    </li>
                    <li class="layui-nav-item" lay-unselect style="color: black;">
                        <span>登录组织:</span>
                        <label id="Organization"></label>
                    </li>
                    <li class="layui-nav-item" lay-unselect style="color: black;">
                        <label id="Hlanguage"></label>
                    </li>
                </ul>
                <ul class="layui-nav layui-layout-right" lay-filter="layadmin-layout-right">
@@ -165,10 +200,6 @@
        </div>
    </div>
    <script src="../layuiadmin/layui/layui.js"></script>
    <script src="../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script src="../layuiadmin/PubCustom.js"></script>
    <script>
        // 导航菜单的间隔像素
        var menuCell = 5;
@@ -178,10 +209,12 @@
        }).extend({
            index: 'lib/index' //主入口模块
        }).use(['index', 'form', 'laydate', 'table', 'element'], function () {
            var $ = layui.$;
            var $ = layui.$
                , form = layui.form;
            var element = layui.element;
            var $ = layui.jquery;
            //所有模块的集合
            var PageModelList = [];
            var HType = "PC";   //登录平台:PC端、手机端
            //判断是否登录 未登录则跳到登录页
            //if (sessionStorage.login != "login") {
@@ -195,10 +228,104 @@
            set_sideMenuDisPlay();
            //#endregion
            ModePage();
            //菜单栏命名
            setMenuLabel();
            //#region 搜索文本 点击事件
            // 分离焦点事件和输入事件
            $('#HModePage').on('focus', function () {  // 焦点事件:显示全部选项
                renderOptions1('');
                $('#dropdownMenu1').show();
            }).on('input', function () {  // 输入事件:过滤选项
                var inputVal = $(this).val().trim();
                renderOptions1(inputVal);
                $('#dropdownMenu1').show();
            });
            // 文档点击关闭下拉
            $(document).on('click', function (e) {
                if (!$(e.target).closest('#HModePage, #dropdownMenu1').length) {
                    $('#dropdownMenu1').hide();
                }
            });
            // 渲染选项(支持显示全部)
            function renderOptions1(filterText) {
                var LimitData = [];
                if (filterText == "") {
                    for (var i = 0; i < 10; i++) {
                        LimitData.push(PageModelList[i])
                    }
                }
                var filteredData = filterText ?
                    PageModelList.filter(function (item) {
                        return item.HName.toLowerCase().includes(filterText.toLowerCase());
                    }) :
                    LimitData;  // 无过滤文本时显示全部
                var DataMdel = [];
                for (var i = 0; i < 10; i++) {
                    if (i < filteredData.length && filteredData.length != 0) {
                        DataMdel.push(filteredData[i]);
                    }
                }
                var html = '';
                if (DataMdel.length > 0) {
                    DataMdel.forEach(function (item) {
                        html += `<li class="layui-nav-item aa" data-value="${item.Hurl}">${item.HName}</li>`;
                    });
                } else {
                    html = '<li class="layui-nav-item aa">无列表模块</li>';
                }
                $('#optionList1').html(html);
            }
            // 选项点击事件
            $('#optionList1').on('click', 'li', function (data) {
                if (!$(this).text().includes('无列表模块')) {
                    var selectedText = $(this).text();
                    $('#HModePage').val(selectedText).trigger('input');
                    var value = data.target.dataset.value
                    if (selectedText != "") {
                        layui.index.openTabsPage(value, selectedText);
                    }
                }
                $('#dropdownMenu1').hide();
            });
            //#endregion
            form.on('select(HModePage)', function (data) {
                var keyword = data.elem[data.elem.selectedIndex].text;
                if (data.value != "") {
                    layui.index.openTabsPage(data.value, keyword);
                }
            });
            //#region 页面其它方法
            //获取模块页面
            function ModePage() {
                $.ajax({
                    type: "get",
                    url: GetWEBURL() + "/Web/ModePageList",
                    data: { "HMakeName": sessionStorage["HUserName"], "HType": HType },
                    success: function (result) {
                        if (result.count == 1) { // 说明验证成功了,
                            var data = result.data;
                            PageModelList = data;
                        }
                        layer.closeAll("loading");
                    }
                })
            }
            //显示侧边菜单
            function set_sideMenuDisPlay() {
                //判断用户是移动端还是PC端
@@ -235,14 +362,25 @@
                var liStr = '';
                //遍历生成主菜单
                for (var i = 0; i < data.length; i++) {
                    //判断主菜单当前登录的语言类型
                    var HTranslationText = "";
                    if (sessionStorage["HTranSlate"] == "1") {
                        HTranslationText = data[i].HName;
                    } else if (sessionStorage["HTranSlate"] == "2") {
                        HTranslationText = data[i].HTranslationText_English;
                    } else if (sessionStorage["HTranSlate"] == "3") {
                        HTranslationText = data[i].HTranslationText_Spain;
                    }
                    // 判断是否存在子菜单
                    if (data[i].childMenus != null && data[i].childMenus.length > 0) {
                        liStr += '<li data-name="set" class="layui-nav-item">';
                        //设置一级菜单图标
                        if (data[i].HLevel == 1 && data[i].HPicNum != null && data[i].HPicNum != "") {
                            liStr += '<a><i class="' + data[i].HPicNum + '"></i><cite>' + data[i].HName + '</cite><span class="layui-nav-more"></span></a>';
                            liStr += '<a><i class="' + data[i].HPicNum + '"></i><cite>' + HTranslationText + '</cite><span class="layui-nav-more"></span></a>';
                        } else {
                            liStr += '<a><i class="layui-icon layui-icon-set"></i><cite>' + data[i].HName + '</cite><span class="layui-nav-more"></span></a>';
                            liStr += '<a><i class="layui-icon layui-icon-set"></i><cite>' + HTranslationText + '</cite><span class="layui-nav-more"></span></a>';
                        }
                        liStr += '<dl class="layui-nav-child">';
@@ -252,7 +390,7 @@
                        }
                        liStr += '</dl></li>';
                    } else {
                        liStr += '<li class="layui-nav-item"><a class="" id = "' + data[i].Hurl + '"   href="' + data[i].Hurl + '"><i class="layui-icon layui-icon-set"></i><cite>' + data[i].HName + '</cite></a></li>';
                        liStr += '<li class="layui-nav-item"><a class="" id = "' + data[i].Hurl + '"   href="' + data[i].Hurl + '"><i class="layui-icon layui-icon-set"></i><cite>' + HTranslationText + '</cite></a></li>';
                    }
                };
                $(".layui-nav-tree").html(liStr);
@@ -261,11 +399,22 @@
            // 递归生成子菜单
            function getChildMenu(subMenu, num) {
                //判断子菜单当前登录的语言类型
                var HTranslationText = "";
                if (sessionStorage["HTranSlate"] == "1") {
                    HTranslationText = subMenu.HName;
                } else if (sessionStorage["HTranSlate"] == "2") {
                    HTranslationText = subMenu.HTranslationText_English;
                } else if (sessionStorage["HTranSlate"] == "3") {
                    HTranslationText = subMenu.HTranslationText_Spain;
                }
                num++;
                var subStr = '';
                if (subMenu.childMenus != null && subMenu.childMenus.length > 0) {
                    subStr += '<dd>';
                    subStr += '<a>'+ subMenu.HName +'</a>';
                    subStr += '<a>' + HTranslationText + '</a>';
                    subStr += '<dl class="layui-nav-child">';
                    for (var j = 0; j < subMenu.childMenus.length; j++) {
                        subStr += getChildMenu(subMenu.childMenus[j], num);
@@ -273,10 +422,10 @@
                    subStr += '</dl>';
                    subStr += '</dd>';
                } else {
                    if (subMenu.HOpenType != "") {
                        subStr += '<dd><a target="main_self_frame" href="' + subMenu.Hurl + '" id = "' + subMenu.Hurl + '">' + subMenu.HName + '</a></dd>';
                    if (subMenu.HShowMode != "") {
                        subStr += '<dd><a target="main_self_frame" href="' + subMenu.Hurl + '" id = "' + subMenu.Hurl + '">' + HTranslationText + '</a></dd>';
                    } else {
                        subStr += '<dd><a lay-href="' + subMenu.Hurl + '" id = "' + subMenu.Hurl + '">' + subMenu.HName + '</a></dd>';
                        subStr += '<dd><a lay-href="' + subMenu.Hurl + '" id = "' + subMenu.Hurl + '">' + HTranslationText + '</a></dd>';
                    }
                }
                return subStr;
@@ -315,15 +464,23 @@
        document.getElementById('UserName').innerHTML = sessionStorage["HUserName"];
        document.getElementById('Organization').innerHTML = sessionStorage["Organization"];
        if (sessionStorage["HTranSlate"] == 1) {
            document.getElementById('Hlanguage').innerHTML = "当前语言:中文";
        } else if (sessionStorage["HTranSlate"] == 2) {
            document.getElementById('Hlanguage').innerHTML = "Current Language:Eeglish";
        } else if (sessionStorage["HTranSlate"] == 3) {
            document.getElementById('Hlanguage').innerHTML = "Current Language:Spanish";
        }
        function openChildPage(id) {
            //获取页面
            var num = document.getElementById(id);
            num.href = id;
            num.target = "mainIFrame";
            num.click();
            console.log(num);
        }
    </script>