2016-01-06 75 views
-1

我正在使用jquery獲取菜單項。獲取每個菜單的子菜單項

$(document).ready(function() { 
$("div.MenuItem a").each(function() { 

    var children = $(this).children(); 

    alert(children.length); 
}); 

從這個腳本我需要讓每個孩子的菜單項。但是在這裏它總是給我長度爲1,即使我有很多子菜單Item。

+0

你可以發佈你的html嗎? – KAD

+0

你可以使用.child() –

回答

1

你應該從父獲得兒童:

$(this).parent().children(); 

希望這有助於。

1

使用菜單結構,如:

<div id="divMenu"> 
    <ul> 
     <li> 
      <a>Menu1</a> 
      <ul> 
       <li><a>Menu1Sub1</a></li> 
       <li><a>Menu1Sub2</a></li> 
       <li><a>Menu1Sub3</a></li> 
      </ul> 
     </li> 
    </ul> 
</div> 

你將需要:

$("#divMenu > ul > li > a").each(function() { 

    var children = $(this).next('ul').children(); 

    alert(children.length); 
}); 
+0

謝謝。這解決了我的問題 – Snj

0

我已創建演示了you..same像你一樣

$("div.MenuItem").each(function() { 
 
    var children = $(this).children(); 
 
    alert(children.length); 
 
});
<div class="MenuItem"> 
 
    <a>j</a> 
 
    <a>d</a> 
 
    <a>c</a> 
 
    <a>a</a> 
 

 
</div>