如何防止回车(enter)键提交表单


Posted in Javascript onMay 11, 2014

如何防止回车(enter)键提交表单,其实很简单,就一句话。onkeydown="if(event.keyCode==13)return false;"把这句写在from标签里面就好了。

如果在页面中按Enter键会自动提交的话,可以设置返回值防止自动提交如<input id="q" name="q" type="text" onkeypress="javascript:return gosearch();">返回值必须是false

function gosearch() 
{ 
if(window.event.keyCode == 13) 
{ 
search(); 
return false; 
} 
}

或者直接在form中写
<form name="form1" action="action/soft_add_action.php" enctype="multipart/form-data" method="post" onkeydown="if(event.keyCode==13)return false;" onSubmit="return checkSubmit();">

或参考下面的代码:

<html>
<head>
<title>禁止按回车键提交表单</title>
</head>
<body>
<form name="myform" action="" onkeydown="if(event.keyCode==13){return false;}">
<input type=text name=user>
<input type=text name=pass>
<input type=button name=mybutton value=submit onclick=myform.submit()>
</form>
您可以在"myform.submit()"函数里加入表单判断,和一般的表单判断一样,只是改一下函数名。
</body>
</html>

下面介绍下javascript中event.keycode。

keycode 8 = BackSpace BackSpace
keycode 9 = Tab Tab
keycode 12 = Clear
keycode 13 = Enter
keycode 16 = Shift_L
keycode 17 = Control_L
keycode 18 = Alt_L
keycode 19 = Pause
keycode 20 = Caps_Lock
keycode 27 = Escape Escape
keycode 32 = space space
keycode 33 = Prior
keycode 34 = Next
keycode 35 = End
keycode 36 = Home
keycode 37 = Left
keycode 38 = Up
keycode 39 = Right
keycode 40 = Down
keycode 41 = Select
keycode 42 = Print
keycode 43 = Execute
keycode 45 = Insert
keycode 46 = Delete
keycode 47 = Help
keycode 48 = 0 equal braceright
keycode 49 = 1 exclam onesuperior
keycode 50 = 2 quotedbl twosuperior
keycode 51 = 3 section threesuperior
keycode 52 = 4 dollar
keycode 53 = 5 percent
keycode 54 = 6 ampersand
keycode 55 = 7 slash braceleft
keycode 56 = 8 parenleft bracketleft
keycode 57 = 9 parenright bracketright
keycode 65 = a A
keycode 66 = b B
keycode 67 = c C
keycode 68 = d D
keycode 69 = e E EuroSign
keycode 70 = f F
keycode 71 = g G
keycode 72 = h H
keycode 73 = i I
keycode 74 = j J
keycode 75 = k K
keycode 76 = l L
keycode 77 = m M mu
keycode 78 = n N
keycode 79 = o O
keycode 80 = p P
keycode 81 = q Q at
keycode 82 = r R
keycode 83 = s S
keycode 84 = t T
keycode 85 = u U
keycode 86 = v V
keycode 87 = w W
keycode 88 = x X
keycode 89 = y Y
keycode 90 = z Z
keycode 96 = KP_0 KP_0
keycode 97 = KP_1 KP_1
keycode 98 = KP_2 KP_2
keycode 99 = KP_3 KP_3
keycode 100 = KP_4 KP_4
keycode 101 = KP_5 KP_5
keycode 102 = KP_6 KP_6
keycode 103 = KP_7 KP_7
keycode 104 = KP_8 KP_8
keycode 105 = KP_9 KP_9
keycode 106 = KP_Multiply KP_Multiply
keycode 107 = KP_Add KP_Add
keycode 108 = KP_Separator KP_Separator
keycode 109 = KP_Subtract KP_Subtract
keycode 110 = KP_Decimal KP_Decimal
keycode 111 = KP_Divide KP_Divide
keycode 112 = F1
keycode 113 = F2
keycode 114 = F3
keycode 115 = F4
keycode 116 = F5
keycode 117 = F6
keycode 118 = F7
keycode 119 = F8
keycode 120 = F9
keycode 121 = F10
keycode 122 = F11
keycode 123 = F12
keycode 124 = F13
keycode 125 = F14
keycode 126 = F15
keycode 127 = F16
keycode 128 = F17
keycode 129 = F18
keycode 130 = F19
keycode 131 = F20
keycode 132 = F21
keycode 133 = F22
keycode 134 = F23
keycode 135 = F24
keycode 136 = Num_Lock
keycode 137 = Scroll_Lock
keycode 187 = acute grave
keycode 188 = comma semicolon
keycode 189 = minus underscore
keycode 190 = period colon
keycode 192 = numbersign apostrophe
keycode 210 = plusminus hyphen macron
keycode 211 =
keycode 212 = copyright registered
keycode 213 = guillemotleft guillemotright
keycode 214 = masculine ordfeminine
keycode 215 = ae AE
keycode 216 = cent yen
keycode 217 = questiondown exclamdown
keycode 218 = onequarter onehalf threequarters
keycode 220 = less greater bar
keycode 221 = plus asterisk asciitilde
keycode 227 = multiply division
keycode 228 = acircumflex Acircumflex
keycode 229 = ecircumflex Ecircumflex
keycode 230 = icircumflex Icircumflex
keycode 231 = ocircumflex Ocircumflex
keycode 232 = ucircumflex Ucircumflex
keycode 233 = ntilde Ntilde
keycode 234 = yacute Yacute
keycode 235 = oslash Ooblique
keycode 236 = aring Aring
keycode 237 = ccedilla Ccedilla
keycode 238 = thorn THORN
keycode 239 = eth ETH
keycode 240 = diaeresis cedilla currency
keycode 241 = agrave Agrave atilde Atilde
keycode 242 = egrave Egrave
keycode 243 = igrave Igrave
keycode 244 = ograve Ograve otilde Otilde
keycode 245 = ugrave Ugrave
keycode 246 = adiaeresis Adiaeresis
keycode 247 = ediaeresis Ediaeresis
keycode 248 = idiaeresis Idiaeresis
keycode 249 = odiaeresis Odiaeresis
keycode 250 = udiaeresis Udiaeresis
keycode 251 = ssharp question backslash
keycode 252 = asciicircum degree
keycode 253 = 3 sterling
keycode 254 = Mode_switch

使用event对象的keyCode属性判断输入的键值

eg:if(event.keyCode==13)alert(“enter!”);

键值对应表
A

0X65  U

0X85
B

0X66  V

0X86
C

0X67  W

0X87
D

0X68  X

0X88
E

0X69  Y

0X89
F

0X70  Z

0X90
G

0X71  0

0X48
H

0X72  1

0X49
I

0X73  2

0X50
J

0X74  3

0X51
K

0X75  4

0X52
L

0X76  5

0X53
M

0X77  6

0X54
N

0X78  7

0X55
O

0X79  8

0X56
P

0X80  9

0X57
Q

0X81 ESC

0X1B
R

0X82 CTRL  0X11
S

0X83 SHIFT 0X10
T

0X84 ENTER 0XD

如果要使用组合键,则可以利用event.ctrlKey,event.shiftKey,event .altKey判断是否按下了ctrl键、shift键以及alt键。

Javascript 相关文章推荐
validator验证控件使用代码
Nov 23 Javascript
jquery ajax对特殊字符进行转义防止js注入使用示例
Nov 21 Javascript
JS调试必备的5个debug技巧
Mar 07 Javascript
js动态添加onclick事件可传参数与不传参数
Jul 29 Javascript
AngularJS模块学习之Anchor Scroll
Jan 19 Javascript
javascript中数组和字符串的方法对比
Jul 20 Javascript
浅谈bootstrap使用中的一些问题以及解决过程
Oct 18 Javascript
数组Array的排序sort方法
Feb 17 Javascript
JavaScript生成图形验证码
Aug 24 Javascript
Vue脚手架的简单使用实例
Jul 10 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
Jul 20 Javascript
原生js实现简单轮播图
Oct 26 Javascript
js取整数、取余数的方法
May 11 #Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
May 11 #Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
May 11 #Javascript
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
May 11 #Javascript
jQuery事件之键盘事件(ctrl+Enter回车键提交表单等)
May 11 #Javascript
jquery 按键盘上的enter事件
May 11 #Javascript
jquery.hotkeys监听键盘按下事件keydown插件
May 11 #Javascript
You might like
php 面向对象的一个例子
2011/04/12 PHP
PHP实现异步调用方法研究与分享
2011/10/27 PHP
PHP explode()函数用法、切分字符串
2012/10/03 PHP
探讨php中防止SQL注入最好的方法是什么
2013/06/10 PHP
PHP和javascript常用正则表达式及用法实例
2014/07/01 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
2016/10/17 PHP
php魔术方法功能与用法实例分析
2016/10/19 PHP
PHP登录(ajax提交数据和后台校验)实例分享
2016/12/29 PHP
laravel与thinkphp之间的区别与优缺点
2021/03/02 PHP
关于Javascript作用域链的八点总结
2013/12/06 Javascript
Bootstrap实现input控件失去焦点时验证
2016/08/04 Javascript
JS基于面向对象实现的选项卡效果示例
2016/12/20 Javascript
在JS中如何把毫秒转换成规定的日期时间格式实例
2017/05/11 Javascript
浅谈angular.copy() 深拷贝
2017/09/14 Javascript
vue router嵌套路由在history模式下刷新无法渲染页面问题的解决方法
2018/01/25 Javascript
JavaScript变量声明var,let.const及区别浅析
2018/04/23 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
node app 打包工具pkg的具体使用
2019/01/17 Javascript
vue使用video.js进行视频播放功能
2019/07/18 Javascript
非常漂亮的js烟花效果
2020/03/10 Javascript
Vue路由守卫及页面登录权限控制的设置方法(两种)
2020/03/31 Javascript
vue项目中使用rem,在入口文件添加内容操作
2020/11/11 Javascript
[08:06]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant 选手采访
2021/03/11 DOTA
Python找出9个连续的空闲端口
2016/02/01 Python
Python的Flask框架标配模板引擎Jinja2的使用教程
2016/07/12 Python
通过 Python 和 OpenCV 实现目标数量监控
2020/01/05 Python
python2 对excel表格操作完整示例
2020/02/23 Python
python里反向传播算法详解
2020/11/22 Python
Python中读取文件名中的数字的实例详解
2020/12/25 Python
Araks官网:纽约内衣品牌
2020/10/15 全球购物
护理专业毕业生推荐信
2013/10/31 职场文书
大班下学期幼儿评语
2014/12/30 职场文书
计算机教师工作总结
2015/08/13 职场文书
担保书格式范文
2015/09/22 职场文书
python中__slots__节约内存的具体做法
2021/07/04 Python
SQL Server内存机制浅探
2022/04/06 SQL Server