【转】表单禁用回车提交

问题描述:

       应用中的一个表单回车后会提交,但不执行button中的onclick。需要禁用回车提交      

<form id="phoneValidateForm" action="a.do" method="post">  
  在此输入验证码:<input name="validateCode"  id="validateCode" type="text" size="7" maxlength="6"  onkeypress="if(event.keyCode==13||event.which==13){return false;}" >  
    <input type="button" value="验 证"   onclick="js代码" />  
</form>  


产生原因:

      在只有一个控件的FORM中,按回车会提交FORM。在这段程序中,会导致不执行button中的onclick中的JS代码,引起相应错误。

 

解决方法:

      1.多于一个控件,回车不会提交。

      2.添加 onkeypress="if(event.keyCode==13){event.keyCode=0}"

 

      使用2,但firefox里不支持event.keyCode,所以改成

      onkeypress="if(event.keyCode==13||event.which==13){return false;}"实现。

 

注意:firefox中用event.which捕获用户操作,而且不能设置值,只能取值,所以不能写event.which=0

你可能感兴趣的:(html,js,回车提交)