`

表单回车跳过验证

阅读更多
转载
问题描述:应用中的一个表单回车后会提交,但不执行button中的onclick,需要禁用回车提交。
产生原因:在只有一个控件的FORM中,按回车会提交FORM。在这段程序中,会导致不执行button中的onclick中的JS代码,引起相应错误。
注意:多于一个控件,回车不会提交。

解决:
方法一:直接在form的onsubmit方法,因为是自己的方法,无论点击还是回车都会验证。
<form name="form1" id="form1" action="act.php" method="post" 
     onsubmit="myfn();return false;">


方法二:
<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>

注:因firefox里不支持event.keyCode,所以改成
onkeypress="if(event.keyCode==13||event.which==13){return false;}"实现。
firefox中用event.which捕获用户操作,而且不能设置值,只能取值,所以不能写event.which=0

方法三:
function KeyDown() { 
    // 当按下“回车键”时执行Submit事件 
    if (window.event.keyCode == 13){                                     
        document.getElementById("ic").onclick);             
     }  
} 

引用的地方:
<input name="ticket" id="ti" class="input1" size="4" onkeydown="KeyDown()" > 

<img id="ic" src="<%=request.getContextPath()%>/images/pic025a.gif" width="62" height="22" onClick="return toform()"/>
分享到:
评论

相关推荐

    Java实现按回车登录

    3. **事件处理**:处理键盘事件时要小心,避免重复触发或意外跳过某些逻辑。 通过以上步骤,我们可以成功地在Java Swing应用中实现按回车键登录的功能。这对于初学者来说是一个很好的实践项目,有助于加深对Swing...

    网站功能测试方法.doc

    - 方法:尝试跳过必填项提交表单,观察系统是否给出必要的提示信息。 19. **快捷键检查** - 目的:验证常用快捷键是否能够正常使用。 - 方法:尝试使用常用的快捷键组合,如Ctrl+C、Ctrl+V等,确认它们的功能...

    PHP Pear 安装及使用

    如果没有代理服务器,则可以直接回车跳过。 3. **确认绑定信息**: - 接下来脚本会显示一些包与PHP的绑定信息,并询问是否继续。通常情况下选择`Y`继续即可。 4. **安装基础包**: - 完成上述步骤后,脚本会自动...

    刷新页面时防止触发按钮单击事件

    如果发现该变量表明了按钮已经点击过,就跳过按钮事件处理。 3. **使用Session**:与`ViewState`类似,你也可以利用`Session`存储信息,跟踪按钮是否已被点击。在事件处理程序中设置`Session`变量,然后在页面加载...

    2021-2022计算机二级等级考试试题及答案No.13540.docx

    - **continue** 语句跳过当前循环中的剩余语句,进入下一次迭代。 - **return** 语句用于从方法中返回值,并结束该方法的执行。 ### C语言输入输出操作 - 在C语言中,`getchar()` 函数用于从标准输入读取单个字符...

    amis前端低代码框架 v1.1.4

    选择类表单项 selectFirst 跳过 disabled 的选项 (#1393) iconfont 发布到 sdk 里 (#1395) api mock 地址替换 (#1408) Echarts 没数据时显示 loading (#1409) Breaking :翻译文件的 key 不再是中文,如果有修改...

    飞恒进销存管理系统v7.21(源代码)

    1.POS日结由于pos_bill表单的出现两条BillId=0记录,导致日结后查不到Pos明细,而主单会有的错码,修改存储过程pcdDayAuditPayed,出错会回滚;但财务日是在主程序中处理,还是提示日结成功。 2.增加多一个帐单号格式...

Global site tag (gtag.js) - Google Analytics