JQUERY如何从动态div获取id名称?

我有两个动态生成(从PHP文件)divs。这个div是这样的:JQUERY如何从动态div获取id名称?

<div id="x" class="myclass"></div> 

<div id="y" class="myclass"></div>

其中X和Y是从一个PHP文件动态生成的数字。如何获取此id(数字)时,例如,我点击此divs?

我已经试过这样:

$('.myclass').click(function(){ 

alert(this.attr("id"));

});

但这种方式我只得到了第一个ID(myclasses的第一个元素)。

我该如何解决?

回答:

试试这个:

$('.myclass').live('click', function() { 

alert(this.id); //or alert($(this).attr('id'))); for the jQuery method

});

使用$.live()功能绑定事件将事件绑定到那些尚未存在的元素,所以当你添加新的元素div.myclass动态,他们将被绑定为好。


请注意:.live()现在已过时,使用.delegate().on()代替。

$(document).on('click', '.myclass', function() { 

alert(this.id);

});

回答:

你需要使用jQuery对象

$('.myclass').click(function(){ 

alert($(this).attr("id"));

});

此外,不要只使用一个号码的ID。我认为现在只有HTML5允许它。

这里有一个演示:http://jsfiddle.net/SY3m7/

回答:

HTML元素的ID是无效的开头数字。

因此,请尝试生成以“div-10002”之类的字符开头的字母数字标识。

在这两种情况下,以获得点击的元素的ID试试这个:

$('.myclass').live("click", function(){ 

alert(this.id);

});

$('.myclass').live("click", function(){ 

alert($(this).attr("id"));

});

回答:

试试这个 -

$('.myclass').click(function() { 

alert($(this).attr("id"));

});

回答:

$('.myclass').click(function(){ 

alert(this.id);

});

看看例如点击X和Y

http://jsfiddle.net/BJdLJ/4/

回答:

是否想获取与该类相关的所有ID?

试试这个:

$(".myClass").each(function(){alert($(this).attr("id"));}); 

你必须调用上述在另一个函数。

HTH

回答:

$("#container").on("Events",$(selector),function(e){ 

// this will have jquery reference to the container DOM element hence use event.target to capture the element.

var id=$(e.target).attr("id");

});

JonDoeCA - 给了这个答案的Similar question (我不能相信他的答案,因此参考)。

以上是 JQUERY如何从动态div获取id名称? 的全部内容, 来源链接: utcz.com/qa/260997.html

回到顶部