input 回车键提交与不提交表单的解决方法
博客专区 > mdoo 的博客 > 博客详情
input 回车键提交与不提交表单的解决方法
mdoo 发表于2年前
input 回车键提交与不提交表单的解决方法
  • 发表于 2年前
  • 阅读 381
  • 收藏 0
  • 点赞 0
  • 评论 0

【腾讯云】新注册用户域名抢购1元起>>>   

最近遇到IE6/7下敲击回车后表单不提交的问题,网上找到些资料,备案下:

 

回车键提交表单:设置 <input /> 标签或者 <button> 标签的属性 type="submit" 即可。

回车键不提交表单,用JavaScript来解决,具体代码如下:

document.getElementsByTagName('form')[0].onkeydown = function(e){
    var e = e || event;
    var keyNum = e.which || e.keyCode;
    return keyNum==13 ? false : true;
};


分析:

如果按钮用 <input /> 标签,标签的 type="submit" ,IE6、7、8、Firefox回车时均提交。

如果按钮用 <input /> 标签,标签的 type="button" ,

1 没有 <input type="text" value="" /> 回车均不提交。
2 有一个 <input type="text" value="" /> , IE6、7下焦点在何处回车均不会提交,IE8、只有焦点在 <input type="text" value="" /> 上时回车才会提交, Firefox均回车会提交。
3有多个 <input type="text" value="" /> ,IE6、7、8、Firefox均不会提交。

如果按钮用 <input /> 标签,标签的 type="" ,E6、7、8、Firefox均会默认为 type="text" 。

如果按钮用 <button> 标签,标签的 type="submit" ,E6、7、8、Firefox回车时均提交。

如果按钮用 <button> 标签,标签的 type="button" ,

1 没有 <input type="text" value="" /> 回车均不提交。
2 有一个 <input type="text" value="" /> , IE6、7下焦点在何处回车均不会提交,IE8、只有焦点在<input type="text" value="" />上时回车才会提交, Firefox均回车会提交。
3 有多个 <input type="text" value="" /> ,IE6、7、8、Firefox均不会提交。

如果按钮用 <button> ,标签的 type="" ,IE6、7下默认的 type="button" ,IE6、7下焦点在何处回车均不提交,IE8、Firefox默认为 type="submit" ,IE8、Firefox均回车会提交。


====================


或者直接在form中写

<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>


  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 6
博文 60
码字总数 50120
×
mdoo
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: