我试图动态地将id附加到动态生成的div中。最初我有第一个div和#34;检查" &安培;然后在"显示更多"单击按钮,我们另一个具有相同类的div被渲染。这里有一个ajax电话。这是结构:
<div class= "check">
</div>
显示更多点击: AJAX致电
<div class= "check">
</div>
显示更多点击: AJAX致电
<div class= "check">
</div>
我想动态地将id添加到主&amp;嵌套的div。所以我想要以下结果:
<div class= "check" id = "check_0" >
<div id = "test0">
<script type = 'text/javascript'>
thirdpartyfunction(function(){});
</script>
</div>
</div>
<div class= "check" id = "check_1" >
<div id = "test1">
<script type = 'text/javascript'>
thirdpartyfunction(function(){});
</script>
</div>
</div>
<div class= "check" id = "check_2" >
<div id = "test2">
<script type = 'text/javascript'>
thirdpartyfunction(function(){});
</script>
</div>
</div>
我尝试改变第一个div的id总是。什么是解决这个问题的最佳方法?
我试过这样的事情:(伪代码)
var count = 0;
if(div with count id=0 does not exist then .. )
{
$(".check").attr("id","check_"+count);
count++;
}
第三方功能 thirdpartfunction.track(function(){test(&#34; test&#34;);})
答案 0 :(得分:1)
使用JQuery的.each()
$( ".check" ).each(function( i ) {
$(this).attr('id', 'check' + i);
$(this).append('<div id=\"test' +i+'\"></div>');
var script=document.createElement('script');
script.type='text/javascript';
script.innerHTML=" alert('"+i+"');";
$(this).find('div').append(script);
});
这是一个有效的jsfiddle http://jsfiddle.net/puo906vn/4/
答案 1 :(得分:0)
使用:
var count = 0;
if($('.check').attr('id') != 'check_'+0)
{
$(".check").attr("id","check_"+count);
count++;
}
答案 2 :(得分:0)
尝试这种更短的方式:
$(".check").each(function(key,elem){
$(elem).attr('id', 'check_' + key)
})