jQuery在循环中绑定事件的问题

作者:jiang2018.02.07来源:Web前端之家浏览:336评论:0
关键词:JQueryJS

有个页面上需要N个DOM,每个DOM里面的元素ID都要以数字结尾,比如说:

<input type="text" name="username" id="username_1" value="" />
<input type="text" name="username" id="username_2" value="" />
<input type="text" name="username" id="username_3" value="" />

现在有个循环,在页面载入的时候需要给这每个元素增加一个onclick事件,很容易想到的写法就是:

$(function(){
 for(var i=1; i<=3; i++){
  $('#username_'+i).onclick(function(){
   alert(i);
  });
 }
});

这么写是错误的。。。

然后改成下面的就对了:

$(function(){
 for (var i=1; i<=3; i++){
  $("#username_"+i).bind("click", {index: i}, clickHandler);
 }

 function clickHandler(event) {
  var i= event.data.index;
  alert(i);
 }
});
温馨提示本文作者系 ,经Web前端之家编辑修改或补充,转载请注明出处和本文链接

已有0人参与

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新留言

  • 哈哈

    这eb2c0e8c839166f3036c5348f77293c9是什么呀...

  • admin

    客气了,请继续关注我们QQ群:295431592...

  • essaypinglun

    感谢楼主的分享...

  • 游客1

    非常好...

  • 游客

    这些插件都不错的...

  • 第三方

    似懂非懂...

  • admin

    有些是可以的,需要叠加很多层。...

  • 素材火

    纯css能实现吗?...