使用.on函数和selector参数访问动态创建元素的属性

时间:2014-07-31 21:33:10

标签: jquery

我有动态创建的元素,我想在点击后访问其中一个属性。我想根据类名识别这些新的子元素。根据我的理解,我应该使用.on函数来添加使用已存在的父元素的单击处理程序。例如,这将是动态元素:

<div id="parent">
    <a class="dynamicChild" id="123" />
    <a class="dynamicChild" id="124" />
    <a class="dynamicChild" id="125" />
</div>

这是添加点击处理程序的功能:

$('#parent').on('click', '.dynamicChild', function(e) { });

我的问题是,在上面的函数中我想访问被点击的子元素的id。有没有人对我怎么做这个有什么建议?我的猜测如下,但它似乎无法奏效。

alert($(this).id);

提前致谢。

1 个答案:

答案 0 :(得分:1)

不要把它包起来:

this.id // should work

See this fiddle使用完全相同的代码!

如果由于某种原因你已经把它变成了一个jQuery对象,那么你必须明确地获取该属性:

$(this).attr('id')

另一种选择:

e.target.id