开发者社区> 问答> 正文

js问题,欢迎大家帮忙为我指点迷津 js报错 

问题是这样的,当我第一次点击btni,并输入账号密码,点击OK,能正常添加;第二次点击点击btni,并输入账号和密码,点击OK,先弹出一次alert,后正常添加;第三次点击btni,并输入账号和密码,点击OK,先弹出两次alert,后正常添加。。。后面弹出alert的数量如前依次加1;     /==========添加=======================/     $('.btni').eq(0).on('click',function(){         $('.add').show();         $('#add_ok').on('click',function(){             var username=$('#username').val();             var userpsw=$('#userpsw').val();             if (username!=''&&userpsw!='') {                 $('.bd_r_b').append('<tr><td><input type="checkbox" class="c_box"/></td><td>'+username+'</td><td>'+userpsw+'</td><td></td></tr>')             } else{                 alert('请填写账号和密码');             };             $('#username').val('');             $('#userpsw').val('');             $('.add').hide();         });     });

展开
收起
kun坤 2020-06-03 10:02:43 533 0
1 条回答
写回答
取消 提交回答
  • .btni每单击一次就会给#add_ok绑定一次单击造成多个,把add_ok的单击提取出来绑定,然后btni事件里直接触发#add_ok.click()######里边的click多次绑定事件######能详细解释下吗?######如果要多次输出的话,可以考虑写一个循环,每点完一次后给全局变量+1######。。。我理解有误#######add_ok 被多次绑定事件,把它从 .btni 弄出来。你要调用 #add_ok.click,可以用trigger。######你的问题,好好查查bind与live的区别,然后查查jquery最新的写法######给add_ok多次绑定了事件,可在on绑定事件前,先用off('click')解绑.######

    引用来自“风吹屁屁凉”的评论

    .btni每单击一次就会给#add_ok绑定一次单击造成多个,把add_ok的单击提取出来绑定,然后btni事件里直接触发#add_ok.click()

    解释的很清楚,谢谢

    2020-06-03 10:02:50
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JavaScript函数 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载