为了账号安全,请及时绑定邮箱和手机立即绑定

使用jquery$(xx).click()激活点击事件,结果点击事件执行了两次。

使用jquery$(xx).click()激活点击事件,结果点击事件执行了两次。

米脂 2018-12-28 23:14:47
使用的是jquery 1.11代码$(document).on('click','button#test1',function(){    console.log('button clicked');});$(document).keydown(function(event){    if(event.keyCode == 13){        console.log('enter');        $('button#test1').click();    }});如果我直接点击test1这个button,就只输出“button clicked”一次如果我按下回车,输出一次“enter”,然而接着会输出两次“button clicked”这是为什么?怎么解决?
查看完整描述

1 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

上面说的都真事件重复绑定问题,我从代码上没看出开.
问题就在于 如果button是焦点 你按 enter 本身就要出发一次 button的 click事件,然后你再出发 keydown 事件 所以...
请在点击了按钮之后 让button 失去焦点 然后再按回车 你就知道咋回事了...

查看完整回答
反对 回复 2019-01-23
  • 1 回答
  • 0 关注
  • 926 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信