2011-07-07 21 views
-1

我正在动态创建删除标签。全部具有相同的类别但不同的ID。点击标签时我想获得ID。我用$(.class).click函数,但它没有工作。我不能使用onclick功能,因为$(this).attr('id')在IE 8中不起作用。。单击不起作用的标签功能

请给我一个解决方案。

谢谢。

+2

需要更多信息 –

回答

6

.click不适用于后来动态创建的元素。因此 使用.live()

$('.class').live('click', function(){ alert(this.id); }); 

更新:

http://api.jquery.com/live/

在jQuery 1.7的,所述.live()方法被弃用。使用.on()连接到事件处理程序 。

使用。对上面的例子()

$('body').on('click','.class',function(){ alert(this.id); }); 
+0

两年后还是有用的答案。 – Deprecated

+0

@ user1821973,自从jQuery 1.7开始不再使用live。应该使用.on()来代替。 – Andy

0
$(".class").click(function(){alert(this.id)}); 
0

尝试这样的事情,使用被传递到单击处理函数,而不是this事件参数。

$('label.foo').click(function(event) {console.log($(event.target).attr('id'))});