2011-10-26 8 views
1

は私のHTML構造jQueryのaddclass問題

<ul> 
    <li>Main 1 
     <ul> 
      <li><a href=''>Child 1-1</a></li> 
      <li><a href=''>Child 2-1</a></li> 
      <li><a href=''>Child 3-1</a></li> 
      <li><a href=''>Child 4-1</a></li> 
     </ul> 
    </li> 
    <li>Main 2 
     <ul> 
      <li><a href=''>Child 1-2</a></li> 
      <li><a href=''>Child 2-2</a></li> 
      <li><a href='' class='selected'>Child 3-2</a></li> 
      <li>Child 4-2</li> 
     </ul> 
    </li> 
    <li>Main 3</li> 
</ul> 

は今、私は必要なものdocument.readyのjqueryのチェックにどの<li><a>はクラスがいる 『』選択したということです。それが1を見つけた場合、それはクラスが<ul>コードは誰でも私は、このためのjQueryのコードをお願いできること

<ul> 
    <li>Main 1 
     <ul> 
      <li><a href=''>Child 1-1</a></li> 
      <li><a href=''>Child 2-1</a></li> 
      <li><a href=''>Child 3-1</a></li> 
      <li><a href=''>Child 4-1</a></li> 
     </ul> 
    </li> 
    <li class='mainselected'>Main 2 
     <ul class='listul'> 
      <li><a href=''>Child 1-2</a></li> 
      <li><a href=''>Child 2-2</a></li> 
      <li><a href='' class='selected'>Child 3-2</a></li> 
      <li>Child 4-2</li> 
     </ul> 
    </li> 
    <li>Main 3</li> 
</ul> 

のようになりますように、その親<li>、その上に、クラスのlistul「オン「mainselected」置きます。

おかげ

答えて

2
$(function(){  
    $('li a.selected').closest('ul').addClass('listul') 
    .parent().addClass('mainselected');  
}); 
+0

本当に助けたおかげで –

1
$(function() { // on DOM ready 
    $("ul > li > ul > li > a.selected")  // explicitly search in nested ul 
     .closest("ul").addClass("listul") // assing ".listul" to parent ul 
     .parent().addClass("mainselected"); // assign ".mainselected" to containing li 
});