0

誰かが私の間違いを見つけることができますか? 次のhtmlリストがあります

 <ul id="left-help-menu">
        <li><a href=#">My Library</a>
            <ul class="left-menu-sub">
                <li id="1">A</li>
                <li id="2">B</li>
                <li id="3">C</li>
                <li id="4">D</li>
                <li id="5">E</li>

            </ul>

        </li>
      </ul>

そして次のjqueryコード

 $(document).ready(function() {
$("#left-help-menu li li a").click(function() {
    var vid = $("#left-help-menu li li").attr("id");
            });
   });

何らかの理由で、このセレクターは最初の li タグのみを選択しています (ページに「vid」を貼り付けてテストすると、常に「1」が表示されます)。どうしてこれなの?

4

1 に答える 1

1

それがattr()ゲッターの仕組みです。最初に一致した要素で機能します。

id一致したすべての属性の配列が必要な場合...

var vid = $("#left-help-menu li li").map(function() { return this.id; }).get();
于 2012-11-05T04:22:17.137 に答える