2013-10-17 49 views
0

我遇到的问题是找出嵌套的无序列表的特定选择器。jquery嵌套列表,选择所有li后面跟着ul

我想添加一个只有当后跟UL

我是新来的jQuery,并感谢您的帮助所有华里。

我试过这可能完全错误,因为我正在寻找任何一个href标记。

$("#sidebar ul").each(function() 
{ 
if($(this).has("ul li").next('ul').length) 
{ 
$(this).find('a').before("<span class='my_span'></span>"); 
} 
}) 

预计输出http://jsfiddle.net/7JdEh/ 添加一个跨度(类 “需要”),以任何李随后UL

这里的降价。

<div id="sidebar"> 
    <ul> 
    <li id="pagenav"> 
    <h2>Pages</h2> 
    <ul> 
     <li class="page_item"> 
      <a href="http://www.examplesite.com/wordpress/?page_id=2" 
       title="About Us">About Us</a> 
     </li> 
     <li class="page_item"> 
      <a href="http://www.examplesite.com/wordpress/?page_id=4" 
       title="Contact">Contact</a> 
     </li> 
     <li class="page_item"> 
      <a href="http://www.examplesite.com/wordpress/?page_id=8" 
       title="Site Map">Site Map</a> 
     </li> 
    </ul> 
    </li> 
    <li> 
    <h2>Archives</h2> 
    <ul> 
     <li><a href='http://www.examplesite.com/wordpress/?m=200502' 
      title='February 2005'>February 2005</a></li> 
     <li><a href='http://www.examplesite.com/wordpress/?m=200501' 
      title='January 2005'>January 2005</a></li> 
     <li><a href='http://www.examplesite.com/wordpress/?m=200412' 
      title='December 2004'>December 2004</a></li> 
      <li> 
     <ul> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=47" 
       title="Stories of our life">Stories</a></li> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=48" 
       title="Computer Tips">Computer Tips</a></li> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=6" 
       title="WordPress Tips">WordPress Tips</a></li> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=28" 
       title="Web Page Design Advice">Web Page Design</a></li> 
     </ul> 
     </li> 
     <li><a href='http://www.examplesite.com/wordpress/?m=200411' 
      title='November 2004'>November 2004</a></li> 
    </ul> 
    </li> 
    <li> 
    <h2>Categories</h2> 
    <ul> 
     <li><a href="http://www.examplesite.com/wordpress/?cat=47" 
      title="Stories of our life">Stories</a></li> 
     <li><a href="http://www.examplesite.com/wordpress/?cat=48" 
      title="Computer Tips">Computer Tips</a></li> 
     <li><a href="http://www.examplesite.com/wordpress/?cat=6" 
      title="WordPress Tips">WordPress Tips</a></li> 
      <li> 
     <ul> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=47" 
       title="Stories of our life">Stories</a></li> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=48" 
       title="Computer Tips">Computer Tips</a></li> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=6" 
       title="WordPress Tips">WordPress Tips</a></li> 
      <li><a href="http://www.examplesite.com/wordpress/?cat=28" 
       title="Web Page Design Advice">Web Page Design</a></li> 
     </ul> 
     </li> 
     <li><a href="http://www.examplesite.com/wordpress/?cat=28" 
      title="Web Page Design Advice">Web Page Design</a></li> 
    </ul> 
    </li> 
    </ul> 
    </div> 

感谢

+1

你的意思是像http://jsfiddle.net/arunpjohny/VqY3e/1/ –

+0

不是真的,更像http://jsfiddle.net/7JdEh/ – user1993639

+0

放置一个'ul'直接在另一个'UL '是无效的HTML。你需要一个'li'。 – michaelb958

回答

0

这两个应该做的工作。

$("ul > li"), and or just $("li"). 

Could also do $('ul').find('li').each(function(){ 
    //code here 
}); 
+0

这将选择李以下ul。 – user1993639