首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用jQuery获取被单击元素的id

如何使用jQuery获取被单击元素的id
EN

Stack Overflow用户
提问于 2013-09-08 13:32:36
回答 4查看 122.3K关注 0票数 19
代码语言:javascript
复制
<div class="main_div">
    <div id="inner_div">    
        <span id="d1" class="get_clicked">click to get id</span>
    </div>
</div>

如何获取被点击元素的id?存在于inner_div中的跨度将具有不同的ids,因为我将使用jquery ajax从模型(MVC)加载跨度。因此将有'n‘个跨度。所有跨度都将具有唯一的id。我想要获得我点击的跨度的id。

单击时如何获取跨度的id?如何使用jQuery做到这一点?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-09-08 13:34:03

动态加载内容时更新,以便使用。

代码语言:javascript
复制
$(document).on('click', 'span', function () {
    alert(this.id);
});

旧代码

代码语言:javascript
复制
$('span').click(function(){
    alert(this.id);
});

或者,您可以使用.on

代码语言:javascript
复制
$('span').on('click', function () {
    alert(this.id);
});

this是指单击的当前span元素

this.id将给出点击的当前跨度的id

票数 50
EN

Stack Overflow用户

发布于 2013-09-08 13:34:02

由于您是通过ajax加载跨度的,因此您必须将委托处理程序附加到事件,以便在事件冒泡时捕获它们。

代码语言:javascript
复制
$(document).on('click','span',function(e){
    console.log(e.target.id)
})

您可能希望将事件附加到最接近的静态成员,以提高效率。

代码语言:javascript
复制
$('#main_div').on('click','span',function(e){
    console.log(e.target.id)
})

例如,比绑定到文档要好。

这个问题可能会帮助你理解

Direct vs. Delegated - jQuery .on()

票数 10
EN

Stack Overflow用户

发布于 2016-03-31 03:08:26

我想分享一下如何使用它来更改按钮的属性,因为我花了一些时间才弄清楚……

例如,为了将其背景更改为黄色:

代码语言:javascript
复制
$("#"+String(this.id)).css("background-color","yellow");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18680735

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档