如何防止回车(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 相关文章推荐
基于Jquery的简单&amp;简陋Tabs插件代码
Feb 09 Javascript
javascript+iframe 实现无刷新载入整页的代码
Mar 17 Javascript
jQuery源码分析-01总体架构分析
Nov 14 Javascript
在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
Dec 20 Javascript
关于js日期转化为毫秒数“节省20%的效率和和节省9个字符“问题
Mar 01 Javascript
js绑定事件this指向发生改变的问题解决方法
Apr 23 Javascript
seajs中模块的解析规则详解和模块使用总结
Mar 12 Javascript
详解JavaScript中setSeconds()方法的使用
Jun 11 Javascript
基于JQuery打造无缝滚动新闻步骤详解
Mar 31 Javascript
JSON与js对象序列化实例详解
Mar 16 Javascript
解决vue-cli + webpack 新建项目出错的问题
Mar 20 Javascript
layui固定下拉框的显示条数(有滚动条)的方法
Sep 10 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 explode()函数用法、切分字符串
2012/10/03 PHP
简单实用的PHP防注入类实例
2014/12/05 PHP
php array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
一段效率很高的for循环语句使用方法
2007/08/13 Javascript
文本链接逐个出现的js脚本
2007/12/12 Javascript
JavaScript解析URL参数示例代码
2013/08/12 Javascript
自定义的一个简单时尚js下拉选择框
2013/11/20 Javascript
js判断客户端是iOS还是Android等移动终端的方法
2013/12/11 Javascript
jQuery实现鼠标可拖动调整表格列宽度
2014/05/26 Javascript
Javascript优化技巧之短路表达式详细介绍
2015/03/27 Javascript
使用Node.js为其他程序编写扩展的基本方法
2015/06/23 Javascript
基于Node.js的强大爬虫 能直接发布抓取的文章哦
2016/01/10 Javascript
JS根据浏览器窗口大小实时动态改变网页文字大小的方法
2016/02/25 Javascript
angularjs实现文字上下无缝滚动特效代码
2016/09/04 Javascript
使用JQuery选择HTML遍历函数的方法
2016/09/17 Javascript
js中document.referrer实现移动端返回上一页
2017/02/22 Javascript
jquery中封装函数传递当前元素的方法示例
2017/05/05 jQuery
AngularJS实现的select二级联动下拉菜单功能示例
2017/10/25 Javascript
javascript自定义事件功能与用法实例分析
2017/11/08 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
2018/03/25 jQuery
react build 后打包发布总结
2018/08/24 Javascript
小程序自定义单页面、全局导航栏的实现代码
2019/03/15 Javascript
关于AOP在JS中的实现与应用详解
2019/05/06 Javascript
原生JS实现pc端轮播图效果
2020/12/21 Javascript
[49:18]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 OG vs TNC
2018/04/01 DOTA
对Tensorflow中tensorboard日志的生成与显示详解
2020/02/04 Python
解决tensorflow读取本地MNITS_data失败的原因
2020/06/22 Python
如何理解委托
2012/01/06 面试题
工商管理实习自我鉴定
2013/09/28 职场文书
我们的节日端午节活动方案
2014/03/02 职场文书
父亲节活动策划方案
2014/08/24 职场文书
寒假社会实践个人总结
2015/03/06 职场文书
第一书记观后感
2015/06/08 职场文书
学习焦裕禄观后感
2015/06/09 职场文书
2017新年晚会开幕词
2016/03/03 职场文书
css3中transform属性实现的4种功能
2021/08/07 HTML / CSS