返回嵌套元素的索引

Tur*_*nip 3 html jquery jquery-selectors

我有两个嵌套ul包含链接.

我想a在其父级中找到所点击的索引ul

<div id="main_nav">
<ul>
    <li>
        <ul>
            <li><a href="/url/">LINK</link></li>
            <li><a href="/url/">LINK</link></li>
            <li><a href="/url/">LINK</link></li>
        </ul>
    </li>
</ul>
<ul>
    <li>
        <ul>
            <li><a href="/url/">LINK</link></li>
            <li><a href="/url/">LINK</link></li>
            <li><a href="/url/">LINK</link></li>
        </ul>
    </li>
</ul>

</div>
Run Code Online (Sandbox Code Playgroud)

我正在使用以下代码:

$("#main_nav ul ul a").click(function () {

    var index = $('#main_nav ul ul a').index(this);

    alert(index);
});
Run Code Online (Sandbox Code Playgroud)

这似乎返回了a内部的索引parent of the parent而不仅仅是parent(我希望有意义),即在第二个链接中单击第二个链接ul返回索引4而不是1.

有人可以解释我在哪里出错吗?我怀疑它很简单,但我无法弄明白.

非常感谢.

Den*_*nis 6

您需要获取父li元素的索引.否则,您将获得列表项内锚点的索引,该索引始终为零.

$(this.parentNode).index();
Run Code Online (Sandbox Code Playgroud)