如何在jQuery中检测当前元素id?

时间:2011-12-28 10:32:11

标签: jquery

我有一些HTML代码:

<input type="button" id="btn1" class="myButton" value="Button 1"/>
<input type="button" id="btn2" class="myButton" value="Button 2"/>

每当用户点击每个按钮时,我都需要运行一个jQuery函数,我必须使用他们的类来完成它。

$('.myButton').click(function() {
   // do something
});

但我应该做的,取决于当前的元素Id。

我的问题是如何检测哪个元素称为此函数?我需要知道它的身份。

6 个答案:

答案 0 :(得分:30)

您可以使用this访问当前元素,然后this.id将为您提供当前元素的id

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

答案 1 :(得分:17)

如果您想保留在jquery上下文中,可以使用以下代码段:

$('.myButton').click(function() {
    alert($(this).attr('id'));
});

通过这种方式,您可以更灵活。

答案 2 :(得分:2)

看看this。 当您使用.myButton类将单击回调绑定到每个元素时,您可以使用attr()方法获取被单击元素的id。

答案 3 :(得分:2)

使用jQuery我发现这个工作:

$(this).prop('id')

答案 4 :(得分:0)

事件处理程序中的

this是单击的元素:

$('.myButton').click(function() {

   if (this.id === "btn1") {
       ...
   }    

});

答案 5 :(得分:0)

$('.myButton').on('click',(e)=> {

 if (e.target.id === "btn1") {
     ...
}    

});