【问题标题】:Form not submitting when there is more than one input text输入文本不止一个时表单不提交
【发布时间】:2011-06-17 08:34:07
【问题描述】:

这是一个很容易描述的问题。这是在 Firefox (3.6)、IE (8) 和 Chrome (8) 上测试的。

这里是文件 doesnotsubmit.html

<form>
    <input />
    <input />
</form>

当焦点在一个输入上并按下回车键时,什么也没有发生。

下面是文件dossubmit.html

<form>
    <input />
</form>

当焦点在输入并且您按下回车键时,表单被提交。

对这种不一致的行为有什么见解吗?

我知道表单缺少提交按钮,因此在语义上不正确。无论如何,提交过程是通过 jQuery 对话框按钮窗格的按钮自动处理的,我不知道如何放置额外的

【问题讨论】:

  • 如果我不得不猜测我会说“不提交”是理想的行为,但他们为带有搜索字段的网站添加了一个带有一个输入的表单例外(这是他们的典型模式)。虽然我真的在这里猜测......
  • 那么洞察力是here,请参阅 HTML 规范的链接

标签: forms input submit keypress enter


【解决方案1】:

这个问题有两种可能的解决方案。

  1. 最简单的解决方案是再添加 1 个用户不可见的输入字段。

  2. 您可以绑定该输入字段的 keydown 事件,并在该函数中检查 keyCode == 13,然后检查 preventDefault()。

【讨论】:

    【解决方案2】:

    user754151 是正确的。这是一个已知的错误,但我想你可以通过拦截 enter keypress 事件来摆脱它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-04
      • 1970-01-01
      • 2012-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-17
      相关资源
      最近更新 更多