我想选择我的UL的所有列表项。
UL位于名为ListBox的变量中(ListBox = $('#MyList'))
我使用了ListBox.children(' li')但并非所有列表项都是列表的直接子项。其中一些是列表中的div。
我可以尝试$(' #MyList li')但我想使用ListBox变量
答案 0 :(得分:1)
尝试使用ListBox.find('li');
.find()方法允许我们在DOM树中搜索这些元素的后代,并从匹配元素构造一个新的jQuery对象。
答案 1 :(得分:0)
li
是唯一可以有效包含在ul
中的元素。如果您的标记是这样的,那么它是invalid并且应该更改:
<ul id="MyList">
<div>
<li></li>
</div>
</ul>
但是,如果您的标记更像是这样:
<ul id="MyList">
<li>
<div>
<ul>
<li></li>
</ul>
</div>
</li>
</ul>
然后您只需使用jQuery's find()
method:
var ListBox = $('#MyList');
ListBox.find('li');
请注意,find()
适用于第一个示例,但您需要修复HTML以使其在所有设备上都有效且可访问。因此,您最终可能只需要children()
。