首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么我不能提交此表单?

为什么我不能提交此表单?
EN

Stack Overflow用户
提问于 2018-05-25 06:14:43
回答 1查看 41关注 0票数 0

有人能解释一下为什么在输入中按下enter键时submit事件永远不会触发吗?

代码语言:javascript
复制
<form>
  <input type="text" placeholder="press enter here"/>
  <button disabled>disabled</button>
  <button type="submit">submit</button>
</form>

单击submit按钮可以很好地工作。如果我去掉禁用的按钮,它工作得很好。

测试环境:

  • Chrome版本66.0.3359.181 (内部版本) (64位)
  • Chrome版本68.0.3439.0 (内部版本)金丝雀(64位)

第一个按钮被禁用,但第二个按钮没有type="submit"

这是一个已知的问题吗?谢谢,

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-25 06:32:24

这种行为是有意为之的。§4.10.21.2 "Implicit submission"是HTML5标准的相关部分

form元素的缺省按钮是按树顺序排列的第一个表单所有者是该表单元素的提交按钮。

如果用户代理支持让用户隐式提交表单(例如,在某些平台上,在文本控件处于焦点时按"enter“键隐式提交表单),则对默认按钮具有激活行为且未被禁用的表单执行此操作,必须导致用户代理在该默认按钮上触发一个click事件。

表单中的第一个“提交”按钮始终被视为默认按钮,即使它已被禁用。禁用它会阻止它被用来提交表单。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50518923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档