将 id 动态附加到 jquery 中的动态 div

Dynamically appending id's to dynamic div's in jquery

我正在尝试将 id 动态附加到动态生成的 div。最初我有第一个 div 和 class "check" 然后在单击 "show more" 按钮后,我们呈现另一个 div 与相同的 class .这里有一个 ajax 电话。这是结构:

<div class= "check">

</div>

显示更多点击: AJAX 呼唤

<div class= "check">

</div>

显示更多点击: AJAX 调用

<div class= "check">

</div>

我想将 id 动态附加到主嵌套 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(函数() { 测试("test");})

使用:

var count = 0; 
if($('.check').attr('id') != 'check_'+0)
{
$(".check").attr("id","check_"+count);
count++;
}

使用 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/

试试这个更短的方法:

$(".check").each(function(key,elem){
    $(elem).attr('id', 'check_' + key)
})