0

相当新的jQuery。好东西顺便说一句。然而。有件事我似乎无法理解。我有一个用作导航栏的列表。每个列表项都有一个 id。

我想用 jQuery 得到那个 ID。

项目的定义方式:

<ul id="mainList">
<li id="liFirstItem"><a class="main-link" href="#">First One</a>
    <ul class="sub-links">            
        <li><a href="#">Sub Item 1</a></li>
        <li><a href="#">Sub Item 2</a></li>
    </ul>
</li>
</ul>

从这里来; 获取触发事件的元素的 ID

这些是我的尝试;

    /*testing*/                        
    var current = "Item: " + this.text + "\n";
    /*current += "Id: " + this.id;*/
    /*current += "Id: " + event.target.id;*/

    var target = event.target || event.srcElement;
    var id = target.id

    current += "Id: " + id;

    alert(current.toString());

该项目始终提供所单击项目的正确文本,例如“第一个”。但是,此 ID 始终为空。任何想法,我在这里错过了什么?

非常感谢!

4

1 回答 1

2

尽管您似乎没有为您的元素设置 ID,但这就是您将如何去做的事情。将单击事件处理程序附加到子列表ul 中的所有链接。然后提醒被点击的链接的 ID。

$('.sub-links li a').click(function(){
    alert($(this).attr('id'));
});
于 2013-05-07T13:25:24.483 回答