2014-11-05 117 views
0

我有jsp元素id,它是动态设置的。
它看起来像 id=<%= config.getName()%>
我点击它们时如何获得这些ID?jquery如何获取动态元素ID

如何元素的id传递给函数,如:

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

} 
+0

要绑定'click'事件,该元素吗? – Madhu 2014-11-05 04:20:50

+0

你有什么目的去获得这个特定的ID?你的元素是一个数组? – Edrich 2014-11-05 04:27:32

+0

如果你与我们分享你的目标是什么,通常你会得到很好的建议。例如,如果您尝试使用'id'属性来传输数据,'data'属性可能会更好。因此,如果您愿意接受建议,请随时告诉我们您想实现的目标。 – PeterKA 2014-11-05 05:21:43

回答

0
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 

<script> 
$(document).ready(function() 
{ 
$(".common").click(function() 
{ 
alert(this.className); 
alert(this.id); 
// here u can get class name id value and pass to any function u want 
// functinname(this.className); 
}); 

}); 
</script> 


<div id="vik" class="common">vik div</div> 
<div id="cha" class="common">cha div</div> 
+0

谢谢,课堂安装解决了问题。 – user0527 2014-11-05 04:44:11

0

你可以使用类来获取动态ID为:

$(".any").click(function(){ 
alert($(this).attr("id")); 
}); 
+0

我尝试过.any,但无法触发警报以获取ID信息。 – user0527 2014-11-05 04:39:04

+0

您是否将类分配给触发元素...? – Dinesh 2014-11-05 04:42:57

+0

谢谢Dinesh,班级设置正在工作。但是我想用.classname来替换.any,因为我将为不同的元素使用不同的函数。 – user0527 2014-11-05 04:45:47

2

这个按钮,添加C类名。

<input type='button' class='myButtonClass' id=<%= config.getName()%> /> 

您现在可以使用类的选择。你有,我想3种方式来获得id属性。

$('.myButtonClass').click(function(){ 
    // first option 
    console.log(this.id); // use this only, not $(this), .id will not work on jquery object 
    // second option 
    console.log($(this).prop('id')); 
    // third option 
    console.log($(this).attr('id')); 

}); 
+0

谢谢你的建议,解决了我的问题。我为类似两个输入字段的不同id设置类。并且可以返回正确的ID。 – user0527 2014-11-05 04:41:47

0

是不是还有其他独特的属性?例如,类名称,标签名称,...

如果没有,还有另一种方法可以在标签中创建唯一的属性值。

<div id=<%=config.getName()%> dynamicId="true"></div>