1

たとえば、次の html コンテンツがあります。jquery を使用して、a2 の 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>a2</li>   <------- From here, this li has two ul element
                           <li>b2</li>
                           <li>c2</li>
                           <li>d2</li>
              </ul>    
     </li>
 </ul>
4

1 に答える 1

2

使用できますparents

var numberOfULsContainingThisElement = $(this).parents('ul').length;

thisこれは、指定した の DOM 要素であると想定liされます (たとえば、thisクリック ハンドラーでクリックした場合)。

closest最初の一致で停止するため、使用しません。parentsセレクターに一致するすべての祖先を収集します。

特定のケース (たとえば、クリック ハンドラーではない) では、次のようになります。

var numberOfULsContainingThisElement = $("#ul_second li").first().parents('ul').length;

実例| ソース

于 2013-03-28T18:35:48.990 に答える