php - 如何使用php,html在点击时查看子菜单

标签 php html css

我试图在点击父菜单后查看子菜单。

类(class)->小学->(Grade1,Grade2,Grade3,Grade4,Grade5,Grade6)

类(class)->初中->(Grade7,Grade8,Grade9)

类(class)->中学->(Grade10,Grade11,Grade12)

<div class="collapse navbar-collapse" id="main-navigation">
                <ul class="nav navbar-nav navbar-right">

                        <?php foreach ($data as $menu) { ?>
                            <?php if(!$menu->children) { ?>
                            <li><a href=""><?php echo $menu->name; ?></a></li>

                            <?php }

                               else { 

                            ?>

                            <li class="dropdown open">
                                <a href="#" class="dropdown-toggle " data-toggle="dropdown">
                                <?php echo $menu->name; ?>
                                  <span class="fa fa-angle-down"></span>
                                </a>

                                <ul class="dropdown-menu open" role="menu"> 
                                <?php 
                                  foreach ($menu->children as $child) {
                                ?>
                                        <li><a href="" style="color:black;"><?php echo $child->name; ?></a></li>


                                    <?php 
                                        foreach ($child->children as $sub_child) {
                                    ?>
                                            <li class="dropdown-submenu">
                                                <a href="#" style="color:black;" class="dropdown-toggle " data-toggle="dropdown"> <?php echo $sub_child->name; ?><span class="fa fa-angle-down"></span></a>
                                                <ul class="dropdown-submenu" role="menu">

                                             <?php } ?>

                                                <?php } ?>

                                </ul>
                                              </li>
                            <?php } ?>
                            <?php } ?>

                                </ul>
                            </li>
                </ul>
            </div>

结果: Problem with result

我想在点击小学后查看1年级到6年级,点击中学后我想查看7年级到9年级......

请帮忙!

最佳答案

你有一个开放的<ul class="dropdown-submenu" role="menu">标签没有任何 <li><a>在里面生成。然后在关闭 <ul> 之前关闭两个 each 语句标签。

<?php foreach ($child->children as $sub_child) { ?>
<li class="dropdown-submenu">
  <a href="#" style="color:black;" class="dropdown-toggle " data-toggle="dropdown">
    <?php echo $sub_child->name; ?><span class="fa fa-angle-down"></span>
  </a>
  <ul class="dropdown-submenu" role="menu">

    <?php } ?>

    <?php } ?>

  </ul>
</li>

这将导致各种意外的标记输出。修复它,它应该可以解决您的问题。如果没有,您至少会更近一些。

关于php - 如何使用php,html在点击时查看子菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40566023/

相关文章:

php - 有没有办法让这些查询更短?

php - 我一直在从我的内部连接表中获取重复值

javascript - 动态水平滚动位置仅通过地址栏刷新设置

css - Bootstrap 和手机方向 - 表单按钮定位

html - 之前使用伪类对 css 标签进行分组(悬停)

html - 使用 css 在主菜单悬停时平滑向下滚动子菜单

php - 为什么 isDot() 对我失败? (PHP)

php - 在预 Controller codeigniter Hook 中访问 CI session

html - css - 从外部样式表转换为内联样式表;不确定一些 "dropdown"样式去了哪里

javascript - 无法导入前端代码