jquery - 在ul里面的ul里面选择li

时间:2012-11-15 14:47:31

标签: jquery jquery-selectors html-lists

我有这个:

    <ul>
        <li>
            <ul>
                <li><a>Hello world</a></li>
                <li><a>hi</a></li>
            </ul>
       </li>
       <li><a>hi</a></li>
   </ul>

我需要选择第二个ul中的li(例如,带有'Hello world'字样的那个。)

我如何用jQuery做到这一点?

我试过了:

$('ul li:eq(1) li:eq(1)').doSomthing();

3 个答案:

答案 0 :(得分:4)

这很简单:

ul ul li

这不会检查立即嵌套;选择器中的第二个ul可以更加深入嵌套。您可以使用>

来限制此操作
ul > li > ul > li

要仅抓取第一个li,它可能看起来像这样:

​$("ul > li > ul > li:first").css("background", "red");​​​​​​​​​​

您使用:eq伪选择器尝试的方法看起来更像是:

​$("li:eq(0) li:eq(0)").css("background", "red");​​​​​​​​​​

请记住索引是从零开始的,因此第一项始终是索引0。

答案 1 :(得分:0)

savest是使用直接子选择器>

$("ul > li > ul")

答案 2 :(得分:0)

try this it will work as you wish
  

$('ul li&gt; ul li:eq(0)')。css('border','1px solid red');