标签:onsubmit

当form表单中只有一个input元素时回车将自动提交表单

发表于2年前(Jun 6, 2016 9:42:18 AM)  阅读 719  评论 0

分类: WEB前端

标签: 表单回车提交 onsubmit

先说结论,当页面表单内只有一个input元素时,按回车,将会自动提交表单,进行页面跳转,这是浏览器的默认行为。有两个例外,一是如果这个表单还包含一个不可见的input元素,即display=none,浏览器认为这是两个元素,不会自动提交(据说火狐不这么认为,未验证)。二是,如果表单还包含type=hidden的元素,浏览器并不认为是一个“有效”元素,将依然执行只有一个元素自动提交原则。

好了,现在如果要控制这种行为,通过上面的描述可以看出,我们可以加一个style=none的元素来实现。如果是采用ajax提交的方法话,还可以通过给form添加onsubmit="return false;"来阻止默认提交行为。

下面是网友总结的form表单回车提交的几种情况,请读者自行验证:

1. 如果表单里有一个type=”submit”的按钮,回车键生效。
2. 如果表单里只有一个type=”text”的input,不管按钮是什么

......