Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Input keydown事件是触发另一个元素的按钮单击_Javascript_Jquery_Html_Knockout.js_Knockout 2.0 - Fatal编程技术网

Javascript Input keydown事件是触发另一个元素的按钮单击

Javascript Input keydown事件是触发另一个元素的按钮单击,javascript,jquery,html,knockout.js,knockout-2.0,Javascript,Jquery,Html,Knockout.js,Knockout 2.0,我希望我错过了一些明显的东西 这只发生在IE9中(见图) 我正在使用KnockoutJS(2.1rc)和JQuery(1.7.2) 我在一个页面上有一个输入元素(实际上有很多),每当我按下“回车”键时,它就会触发页面上第一个按钮元素的click事件 将type=“button”添加到元素中。如果你在IE中省略了它,它将把它们当作元素 更新了您的JSFIDLE以表明这就是问题所在:这是因为它可能是一个提交按钮,并且浏览器(IE)已为其提供默认焦点。按enter键时,其行为就像单击按钮一样。查看有关

我希望我错过了一些明显的东西

这只发生在IE9中(见图)

我正在使用KnockoutJS(2.1rc)和JQuery(1.7.2)

我在一个页面上有一个输入元素(实际上有很多),每当我按下“回车”键时,它就会触发页面上第一个按钮元素的
click
事件

type=“button”
添加到
元素中。如果你在IE中省略了它,它将把它们当作
元素


更新了您的JSFIDLE以表明这就是问题所在:

这是因为它可能是一个提交按钮,并且浏览器(IE)已为其提供默认焦点。按enter键时,其行为就像单击按钮一样。查看有关阻止使用enter键提交大量不同解决方案的帖子。是的,我在所有浏览器中都遇到过类似的问题,如果按钮处于焦点位置,并且您按下enter键,则会触发两次单击事件(至少在使用敲除连接时是如此。添加到标记中的type=“button”效果很好。