如何使用jquery找到最后一个li元素?

时间:2013-03-28 12:54:38

标签: jquery

我有以下HTML内容......

我只需搜索li元素中的ul(s)文字

例如,

$("#ul_first").find(li).each(function(index,value)
{
    alert(index)
});

这里的问题是find方法在li元素中找到#ul_second。我只希望它在某个li元素中找到ul元素而不是子ul元素。

<ul id="ul_first">
     <li>a</li>
     <li>b</li>
     <li>c</li>
     <li>d</li>
     <li>c
             <ul id="ul_second">
                               <li>a</li>
                               <li>b</li>
                               <li>c</li>
                               <li>d</li>
             </ul>    
     </li>
</ul>

4 个答案:

答案 0 :(得分:1)

尝试添加子选择器。 >将仅选择直接子女。使用find就像省略>,它将选择所有后代。

$("#ul_first > li").each(function(index,value) { alert(index) });

答案 1 :(得分:1)

你可以尝试如下......它会帮助你

小提琴:http://jsfiddle.net/RYh7U/119/

Traversing/children

$('#ul_first').children('li').each(function(index,value) 
{     
 alert(index); 
});

答案 2 :(得分:0)

尝试使用`$(“#ul_first&gt; li”)$?这应该找到直接位于ul_first

之下的li元素

答案 3 :(得分:0)

将您的选择器更改为'#ul_first > li'。这将检查所有属于#ul_first的孩子。

当下一个选择器是其父级的直接子项时,子选择器>匹配。

来源: http://www.w3.org/TR/CSS2/selector.html#child-selectors