日期:2014-05-16  浏览次数:20404 次

(请教高手)for循环遍历jQuery选择器选择的动态ID
<script type="text/javascript">
$(function(){
  for (b=0;b<num ;b++ )
  {
  $("#add"+b).click(function(){
alert("#add"+b);
}); }
});
</script>
<?php
for($i=0;$i<num;$i++)
{
?>
<a id="add<?php echo ($a);?>" href="#" class="lj"><b>增加</b></a>
<?php
}
?>
红色代码部分jQuery选择器似乎只能提取最后一个b=num-1这个值,如何才能让其遍历出来所有的ID。请高手来指教。

------解决方案--------------------
<script type="text/javascript">
$(function(){
for (b=0;b<num ;b++ ){
(function(i){
$("#add"+i).click(function(){
alert("#add"+i);
});
})(b)
}
});
</script>
<?php
for($i=0;$i<num;$i++)
{
?>
<a id="add<?php echo ($a);?>" href="#" class="lj"><b>增加</b></a>
<?php
}
?>
------解决方案--------------------
上面字符写错
<script type="text/javascript">
$(function(){
for (b=0;b<num ;b++ ){
with({i:b})
$("#add"+i).click(function(){
alert("#add"+i);
});
}
});
</script>
<?php
for($i=0;$i<num;$i++)
{
?>
<a id="add<?php echo ($a);?>" href="#" class="lj"><b>增加</b></a>
<?php
}
?>
------解决方案--------------------
HTML code
<script type="text/javascript">
$(document).ready( function() {
    $("a").click( function() { alert($($this).attr('id'); });
}
</script>

------解决方案--------------------
这样试试 不过我没测过
原理就是js的闭包
JScript code
function fa(){
      var b=0;
      function fb(){
      for (b=0;b<num ;b++ ){
             $("#add"+b).click(function(){
             alert("#add"+b);
          }); 
       }
      }
      return fb();
    }()