Form表单按回车自动提交表单的实现方法


Posted in Javascript onNovember 18, 2016

1.form表单中只有一个input标签,按回车键将自动提交表单

当form表单中只有一个<input type="text" name='name' />时按回车键将会自动将表单提交。

<form id='form1' action='a1.jsp' method='post'>
<input type='text' name='name' />
</form>

如果不想让其自动提交可以这样做:

再添加一个<input type="text"/>按下回车将不会自动提交,但是页面上显示一个不知所云的输入框挺别扭,后从网上搜到两个解决办法:

(1) 添加一个<input type='text' style='display:none'/>不显示输入框,然后回车之后也不会提交:

<form id='form1' action='a1.jsp' method='post'>
<input type='text' name='name' />
<input style='display:none' />
</form>

(2) 添加一个onkeydown事件,然后回车之后也不会显示:

<form id='form1' action='a1.jsp' method='post'>
<input type='text' name='name' onkeydown='if(event.keyCode==13) return false;'/>
</form>

ps: 我对于这个 event.keyCode==13表示没有看懂,只是理解为判断条件,但具体还是不懂.如果阁下明白,还请不吝赐教.

如果想添加回车事件,可以在onkeydown事件中添加判断提交表单:

<form id='form1' action='a1.jsp' method='post'>
<input style='display:none' />
<input type='text' name='name' onkeydown='if(event.keyCode==13){gosubmit();}' />
</form>

2.关于是否需要自动提交

我们有时候希望回车键敲在文本框(input element)里来提交表单(form),但有时候又不希望如此。比如搜索行为,希望输入完关键词之后直接按回车键立即提交表单,而有些复杂表单,可能要避免回车键误操作在未完成表单填写的时候就触发了表单提交。

要控制这些行为,不需要借助JS,浏览器已经帮我们做了这些处理,这里总结几条规则:

如果表单里有一个type=”submit”的按钮,回车键生效。

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

如果按钮不是用input,而是用button,并且没有加type,IE下默认为type=button,FX默认为type=submit。

其他表单元素如textarea、select不影响,radio checkbox不影响触发规则,但本身在FX下会响应回车键,在IE下不响应。

type=”image”的input,效果等同于type=”submit”,不知道为什么会设计这样一种type,不推荐使用,应该用CSS添加背景图合适些。

以上所述是小编给大家介绍的Form表单按回车自动提交表单,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js中复制行和删除行的操作实例
Jun 25 Javascript
js向上无缝滚动,网站公告效果 具体代码
Nov 18 Javascript
JS判断客户端是手机还是PC的2个代码
Apr 12 Javascript
JavaScript strike方法入门实例(给字符串加上删除线)
Oct 17 Javascript
JavaScript中的函数模式详解
Feb 11 Javascript
JS检测页面中哪个HTML标签触发点击事件的方法
Jun 17 Javascript
jQuery无刷新上传之uploadify3.1简单使用
Jun 18 Javascript
vuejs开发组件分享之H5图片上传、压缩及拍照旋转的问题处理
Mar 06 Javascript
仿淘宝JSsearch搜索下拉深度用法
Jan 15 Javascript
js正则表达式校验指定字符串的方法
Jul 23 Javascript
详解TypeScript+Vue 插件 vue-class-component的使用总结
Feb 18 Javascript
一文读懂vue动态属性数据绑定(v-bind指令)
Jul 20 Javascript
form+iframe解决跨域上传文件的方法
Nov 18 #Javascript
jQuery ajax 当async为false时解决同步操作失败的问题
Nov 18 #Javascript
微信小程序开发实战教程之手势解锁
Nov 18 #Javascript
JavaScript之WebSocket技术详解
Nov 18 #Javascript
仿iframe效果Aajx文件上传实例
Nov 18 #Javascript
JavaScript之cookie技术详解
Nov 18 #Javascript
js前端解决跨域问题的8种方案(最新最全)
Nov 18 #Javascript
You might like
用来解析.htgroup文件的PHP类
2012/09/05 PHP
PHP中soap的用法实例
2014/10/24 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
2016/01/09 PHP
PHP和MySql中32位和64位的整形范围是多少
2016/02/18 PHP
php实现简单爬虫的开发
2016/03/28 PHP
各种常用浏览器getBoundingClientRect的解析
2009/05/21 Javascript
javascript中使用replaceAll()函数实现字符替换的方法
2010/12/25 Javascript
ExtJs的Date格式字符代码
2010/12/30 Javascript
javascript制作网页图片上实现下雨效果
2015/02/26 Javascript
javascript日期验证之输入日期大于等于当前日期
2015/12/13 Javascript
a标签置灰不可点击的实现方法
2017/02/06 Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
2017/07/03 Javascript
Nuxt.js实战详解
2018/01/18 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
ES6使用 Array.includes 处理多重条件用法实例分析
2020/03/02 Javascript
js实现带箭头的进度流程
2020/03/26 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
python实现的一个火车票转让信息采集器
2014/07/09 Python
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
Python3实现对列表按元组指定列进行排序的方法分析
2018/12/22 Python
pygame实现俄罗斯方块游戏(基础篇1)
2019/10/29 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
Python的形参和实参使用方式
2019/12/24 Python
pytorch:model.train和model.eval用法及区别详解
2020/02/20 Python
python实现简单坦克大战
2020/03/27 Python
使用python批量转换文件编码为UTF-8的实现
2020/04/03 Python
python 读取串口数据的示例
2020/11/09 Python
美国体育用品商店:Academy Sports + Outdoors
2020/01/04 全球购物
简述数组与指针的区别
2014/01/02 面试题
《雨点儿》教学反思
2014/04/14 职场文书
产品销售计划书
2014/05/04 职场文书
分公司经理任命书
2014/06/05 职场文书
派出所班子党的群众路线对照检查材料思想汇报
2014/10/01 职场文书
Java十分钟精通进阶适配器模式
2022/04/06 Java/Android
PHP面试题 wakeup魔法 Ezpop pop序列化与反序列化
2022/04/11 PHP
Docker部署Mysql8的实现步骤
2022/07/07 Servers