【问题标题】:Does the HTML standard say anything about pressing Enter as submitting a form?HTML 标准是否说明按 Enter 提交表单?
【发布时间】:2021-07-16 17:58:24
【问题描述】:

每个浏览器似乎都将按下 Enter 视为提交表单。这种行为是 HTML 标准规定的,还是只是浏览器普遍实现的?

虽然更详细地介绍了按钮的确切行为:Do all browser's treat enter (key 13) the same inside form?

我找到的最接近的,来自https://www.w3.org/TR/html52/sec-forms.html#implicit-submission

如果用户代理支持让用户隐式提交表单(例如,在某些平台上,当文本字段被聚焦时按下“enter”键会隐式提交表单),那么对于默认按钮具有定义的激活行为必须使用户代理在该默认按钮上运行合成点击激活步骤。

这表明它依赖于平台。

【问题讨论】:

  • 您是否尝试在 HTML5 规范中找到它?
  • 我在任何地方都找不到它
  • 好吧!
  • 我要补充一点,尽管我确实尝试过,但我并不是搜索文档方面的专家
  • 不,这完全没问题,我认为首先访问权威资源是一个好习惯,所以你这样做很好 =)

标签: html forms browser


【解决方案1】:

在html标准中

https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#implicit-submission

你会发现这个:

4.10.21.2 隐式提交

表单元素的默认按钮是树中的第一个提交按钮 表单所有者是该表单元素的订单。

如果用户代理支持让用户隐式提交表单 (例如,在某些平台上,在输入文本时按“回车”键 控制焦点隐式提交表单),然后这样做 表单,其默认按钮具有激活行为,而不是 禁用,必须使用户代理触发点击事件 默认按钮。

本质上:DOM 树中的第一个可提交按钮(属于表单)将在“Enter”时触发。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-13
    • 1970-01-01
    • 1970-01-01
    • 2011-05-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多