2016-11-12 5 views
0

親をクリックしてサブメニューを表示しようとしています。クリックしてサブメニューを表示する方法php、html

クラス - >小学校 - >(グレード1、Grade2、Grade3、Grade4、Grade5、Grade6)

クラス - >中学校 - >(Grade7、Grade8、Grade9)

クラス - >セカンダリスクール - >(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

私はプライマリ上でクリックした後、6年生にグレード1を表示したいです中学校をクリックしてからグレード7からグレード9に変更します。

助けてください!

答えて

0

あなたは<li>または<a>が内部で生成されていない開いた<ul class="dropdown-submenu" role="menu">タグを持っています。その後、<ul>タグを閉じる前に2つのステートメントを閉じます。

<?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>

これは、意図しないマークアップ出力のすべての種類の原因となります。それを修正すれば、問題を解決するはずです。もしそうでなければ、あなたは少なくとももっと近づくでしょう。

関連する問題