Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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 单击以获取id_Jquery_Click - Fatal编程技术网

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

如何使用jQuery获取单击的元素的id 单击以获取id,jquery,click,Jquery,Click,如何获取已单击元素的id?内部_div中的span将具有不同的id,因为我将使用jqueryajax从模型(MVC)加载span。所以会有n个跨度。所有跨度都有唯一的id。我想获取我单击的跨度的id 单击时如何获取跨度的id?如何使用jQuery实现这一点?因为您是通过ajax加载跨度的,所以必须将委托处理程序附加到事件,以便在事件冒泡时捕获它们 <div class="main_div"> <div id="inner_div"> <

如何获取已单击元素的id?内部_div中的span将具有不同的id,因为我将使用jqueryajax从模型(MVC)加载span。所以会有n个跨度。所有跨度都有唯一的id。我想获取我单击的跨度的id


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

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

<div class="main_div">
    <div id="inner_div">    
        <span id="d1" class="get_clicked">click to get id</span>
    </div>
</div>
您将希望将事件附加到最接近的静态成员以提高效率

$(document).on('click','span',function(e){
    console.log(e.target.id)
})
例如,它比绑定到文档要好

这个问题可以帮助你理解


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

$('#main_div').on('click','span',function(e){
    console.log(e.target.id)
})
旧代码

$(document).on('click', 'span', function () {
    alert(this.id);
});
或者你可以使用

指单击的当前跨度元素


this.id
将给出当前点击范围的
id

您可以通过此代码获取点击范围的id

$('span').on('click', function () {
    alert(this.id);
});

使用
.on()
事件以实现将来的兼容性

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

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

$("span").on("click",function(e){
    console.log(e.target.Id);
});

span仍然通过ajax加载,对吗?是的,我正在使用jquery ajax加载span。是
internal div
还是
main\u div
通过ajax加载?internal\u div使用ajax加载。span是通过ajax加载的,因此无法工作,您必须使用委托处理程序instead@DGS我在上使用了
,这没有什么区别。仍将仅将事件绑定到DOM中当前的元素前两个仍然是wontCool!谢谢你的回答。这正是我需要的。
$("span").on("click",function(e){
    console.log(e.target.Id);
});
$("#"+String(this.id)).css("background-color","yellow");