我有以下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>
答案 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的孩子。
当下一个选择器是其父级的直接子项时,子选择器>
匹配。