如果子菜单页面在树菜单视图中处于活动状态,则保持子菜单打开

时间:2018-04-24 07:16:07

标签: javascript php jquery html

您好我在我的项目中使用树状菜单功能。工作正常但问题是如果我打开子菜单它不在活动阶段。问题是我希望子菜单保持打开时其中一个子单击菜单项。就像现在一样,当单击子菜单项时,菜单会折叠。

这是我的代码:

jQuery(function($) {

    $('.dd').nestable();

    $('.dd-handle a').on('mousedown', function(e) {
        e.stopPropagation();
    });

    $('[data-rel="tooltip"]').tooltip();

});

这是我从数据库中获取数据的函数

    <!-- PAGE CONTENT BEGINS -->
<div class="row">
<div class="col-sm-12">


<div class="dd dd-draghandle">

<ol class="dd-list">
<?php 
if (isset($_GET['simid'])) {
    $simid = $_GET['simid'];
    $_SESSION['simid'] = $simid;
} else if (isset($_SESSION['simid'])) {
    $simid = $_SESSION['simid'];
} else {
    echo "You are not authorized to view this page.";
}
//$simid = 1;
$pagevalsub = 0;
getmenu($simid); 

function getmenu($simid){
    global $database;
    $q = "SELECT * FROM simulationpages WHERE simid='$simid' AND status='1' AND typeofpage!='1000' AND pagelevel=1 ORDER BY page_order ASC";
    $result = $database->query($q);
    $num_rows = mysql_numrows($result);
    if (!$result || ($num_rows < 0)) {
        echo "Error displaying info";
        return;
    }
    if ($num_rows == 0) {
        return;
    }
    $previouspage = 0;
    $previous_page_id = 0;
    $refid = 0;
    for ($i = 0; $i < $num_rows; $i++) {
        $GLOBALS['pagevalsub'] = $GLOBALS['pagevalsub']+1;
        $id = mysql_result($result, $i, "id");
        $typeofpage = mysql_result($result, $i, "typeofpage");
        $description = mysql_result($result, $i, "description");
        $pagelevel = mysql_result($result, $i, "pagelevel");
        $ref_page_id = mysql_result($result, $i, "ref_page_id");
        $page_order = mysql_result($result, $i, "page_order");
        echo '<li class="dd-item dd2-item" data-id="'.$GLOBALS['pagevalsub'].'"><div class="dd2-content">';
        echo '<a target="_parent" href="pages.php?type=tree&nextpageid='.$id.'">';
        echo $description;
        echo '</a>';
        echo '</div>';
        $previous_page_order = $page_order;
        $previous_page_id = $id;
        cheksubpage($simid, $id);
        echo '</li>';
    }
}

function cheksubpage($simid, $refid) {
    global $database;
    $q = "SELECT * FROM simulationpages WHERE simid='$simid' AND status='1' AND typeofpage!='1000' AND ref_page_id='$refid' ORDER BY page_order ASC";
    $result = $database->query($q);
    $num_rows = mysql_numrows($result);
    if (!$result || ($num_rows < 0)) {

    }
    if ($num_rows == 0) {
        return;
    }
    $previouspage = 0;
    $previous_page_id = 0;
    echo '<ol class="dd-list">';
    for ($i = 0; $i < $num_rows; $i++) {
        $GLOBALS['pagevalsub'] = $GLOBALS['pagevalsub']+1;
        $id = mysql_result($result, $i, "id");
        $typeofpage = mysql_result($result, $i, "typeofpage");
        $description = mysql_result($result, $i, "description");
        $pagelevel = mysql_result($result, $i, "pagelevel");
        $ref_page_id = mysql_result($result, $i, "ref_page_id");
        $page_order = mysql_result($result, $i, "page_order");

        echo '<li class="dd-item dd2-item" data-id="'.$GLOBALS['pagevalsub'].'" active><div class="dd2-content no-hover" >';
        echo '<a  target="_parent" href="pages.php?type=tree&nextpageid='.$id.'">';
        echo $description;
        echo '</a>';
        echo '</div>';
        $previous_page_order = $page_order;
        $previous_page_id = $id;
        cheksubpage($simid, $id);
        echo '</li>';
    }
    echo '</ol>';
}

?>


</ol>

</div>


</div><!-- /.Page complete -->
</div>

任何人都可以帮我解决这个问题

提前感谢。

0 个答案:

没有答案