HTML规范如何使用回车键提交表单?
我已阅读http://www.w3.org/TR/html4/interact/forms.html,但没有任何关于使用回车键提交表单的信息。
它是在某个地方定义的,还是只是大多数浏览器自己实现它的方式,它变成了the way to do it
?
我很好奇,因为如果隐藏提交按钮(display: none
),我刚问了一个关于Webkit没有提交表单的问题。
Trying to 'submit' my form when hitting enter fails
那么在官方文档中是否存在对表单中enter键行为的引用?
答案 0 :(得分:2)
HTML标准与设备无关; HTML用户代理在各种平台上运行,其中许多平台(想想搜索引擎,语音阅读器,webscraper)首先没有键盘。因此,该标准没有说明用户如何切换表单提交。列出提交表单的所有可能方式是不可能的,因为还没有邀请许多设备和用户交互机制 - iOS 6可能允许您通过说“提交表单!”来提交表单。
您看到的Webkit行为由Webkit自行决定,可能是无意的。该标准没有说明submission process中有必要提交按钮。
答案 1 :(得分:1)
它不是规范的一部分。这是浏览器制造商自行决定实施的内容。
答案 2 :(得分:1)
我知道这个问题已经过时了,但我对webkit浏览器遇到了同样的问题。我发现如果您使用visibility: hidden
代替display: none
,则输入按钮将提交表单。我知道这会增加一些样式挑战,但它基本上完成了任务。就标准而言,已经过了一年多的时间,我没有找到比phihag的回答更多信息。
答案 3 :(得分:-1)
规范说明所有表单都必需才能拥有action
属性。如果您有其中一个,则输入键将起作用。我的表单根本没有提交按钮,输入键正常运行。
您可以将javascript附加到提交事件,这可能会阻止浏览器导航到操作uri。
但无论你做什么,你都需要action
uri,它应该是有用的。