我搜索过这个主题,但找不到任何有用的东西。
在我的情况下,我有一个带有点击事件的jQuery-ui按钮。此单击事件工作正常,但始终通过在文本输入字段中按Enter键来调用它。
在这里演示:http://jsfiddle.net/vcfzJ/
希望有人可以提供帮助。我通过检查event.target.nodeName
确定了解决方法。
答案 0 :(得分:2)
这是因为默认情况下,按钮是表单的提交元素,因此在文本框中按Enter键会提交表单。
<button>x</button> is equivalent to <button type="submit">x<button>
使用此按钮使按钮成为非提交元素:
<button type="button">x</button>
然而,这似乎很奇怪,这会触发“点击”事件,因为实际上没有点击按钮,答案似乎是这样的: