input 回车键提交与不提交表单的解决方法

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

 

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

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

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


分析:code

若是按钮用 <input /> 标签,标签的 type="submit" ,IE六、七、八、Firefox回车时均提交。orm

若是按钮用 <input /> 标签,标签的 type="button" ,htm

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

若是按钮用 <input /> 标签,标签的 type="" ,E六、七、八、Firefox均会默认为 type="text" 。get

若是按钮用 <button> 标签,标签的 type="submit" ,E六、七、八、Firefox回车时均提交。input

若是按钮用 <button> 标签,标签的 type="button" ,it

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

若是按钮用 <button> ,标签的 type="" ,IE六、7下默认的 type="button" ,IE六、7下焦点在何处回车均不提交,IE八、Firefox默认为 type="submit" ,IE八、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>
相关文章
相关标签/搜索