问题是这样的,当我第一次点击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(); }); });
.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')解绑.######
解释的很清楚,谢谢
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。