Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery:如何获取锚标记的id_Jquery - Fatal编程技术网

jquery:如何获取锚标记的id

jquery:如何获取锚标记的id,jquery,Jquery,我有两个锚标签 <li><a id="tab1" href="#tabs-1">Issue</a></li> <li><a id="tab2" href="#tabs-2">Change Request</a></li> 发生了什么: 我总是在弹出窗口中看到“tab1” 我需要的是: 当用户单击锚定标记时,其id需要显示在弹出窗口中。您的问题在于警报语句:使用$('a'),您在检索文档中的第一个元素

我有两个锚标签

<li><a id="tab1" href="#tabs-1">Issue</a></li>
<li><a id="tab2" href="#tabs-2">Change Request</a></li>
发生了什么: 我总是在弹出窗口中看到“tab1”

我需要的是:
当用户单击锚定标记时,其id需要显示在弹出窗口中。您的问题在于警报语句:使用
$('a')
,您在检索文档中的第一个
元素时,没有引用警报语句中单击的
元素

相反,要引用单击的元素,请将
$('a')
替换为
$(this)

试一试


可以使用attr()获取任何元素属性,因此:


如果您只需要访问id,那么使用jQuery是不必要的开销:

$('a').click(function(event) {
    alert(this.id);
});

感谢您的快速回复,我收到一条错误消息:Object不支持此属性或方法行:57 Char:17 Code:0如果我将此.attr(“id”)替换为此,则错误会消失,但弹出窗口显示完整的url@balalakshmi:OK,似乎jQuery喜欢$(this)而不是普通的JavaScriptthis。如果您改用
$(this)
(请参阅我更新的代码片段),它是否有效?+1用于解释原始代码不起作用的原因。
$('a').click(function(event) {
    alert($(this).attr("id"));
});
$('a').click(function(event) {
    var currentElemID = $(this).attr("id") // or you can use this.id
});
$('a').attr('id');
$('a').click(function(event) {
    alert(this.id);
});