2013-10-12 91 views
0

我想選擇我的UL的所有列表項。jQuery後代選擇

的UL是一個變量稱爲列表框(列表框= $(「#MYLIST」))

我用ListBox.children(「禮」),但不是所有的列表項列表的直接孩子。其中一些在列表中的div中。

我可以嘗試$(「#MYLIST禮」),但我想用列表框變量

回答

1

嘗試使用ListBox.find('li');

.find()方法允許我們通過這些元素的後代搜索DOM樹並從匹配元素構造一個新的jQuery對象。

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()