在 jQuery 中,如何检索给定类的 id? [复制]

Posted

技术标签:

【中文标题】在 jQuery 中,如何检索给定类的 id? [复制]【英文标题】:In jQuery how can I retrieve the id given the class? [duplicate] 【发布时间】:2012-06-26 15:07:08 【问题描述】:

可能重复:Getting the ID of the element that fired an event using JQuery

举个例子,假设我有

<p id="name" class="editable"...

稍后在 javascript 中我有

$("#editable").focusout(function(e)...

如何找回刚刚失去焦点的元素的id?

【问题讨论】:

你的选择器应该是.editable吗? @Esailija:很好的发现!我将它添加到标签 wiki,我们应该在那里建立一个适当的常见问题解答(我认为这是其中之一)。 @FelixKling 欢呼,找到所有这些重复确实提高了我的谷歌技能:D 【参考方案1】:

你在 jQuery 中有错误的选择器,必须是:

$(".editable")

要提醒 id 失去焦点的元素,您需要在回调中使用 this 上下文作为选择器:

$(".editable").focusout(function() 
    alert($(this).attr('id'));
);

【讨论】:

.focusout() @nnnnnn 好的,我已经更新了我的答案。【参考方案2】:
$(".editable").focusout(function(e)
    var id = $(this).attr('id');
);

或者,如果 .editable 元素只是一个包装器,而有趣的元素 (input) 是它的子元素,那么:

$(".editable").focusout(function(e)
    var id = $(e.target).attr('id');
);​

演示:http://jsfiddle.net/sveinatle/MWvAV/1/

【讨论】:

以上是关于在 jQuery 中,如何检索给定类的 id? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

jQuery更改id内给定类的css

jQuery:选择给定类的所有元素,除了特定的 Id

如何从给定ID的数据库自动检索数据?

如何使用 jquery 从没有任何 id 或类的 div 中删除锚标记?

在jQuery中动态获取id

使用 jQuery 检索服务器控件的 ID