Chrome浏览器中对form表单用onsubmit进行拦截后无法再次提交的问题

    今天在项目开发的过程中遇到这样一个问题,就是在chrome浏览器中form表单被拦截后无法再度提交。

    项目中有这样一个需求,验证两个时间的先后关系。

我写了一个方法:

  
  
  
  
  1. function checkdatetime(){ 
  2.     var startDt=Date.parse($("#startDtString").val()); 
  3.     var expireDt=Date.parse($("#expireDtString").val()); 
  4.     if(startDt>=expireDt){ 
  5.         alert("请检查日期,开始时间晚于结束时间"); 
  6.         return false
  7.     } 

然后form如下:

  
  
  
  
  1. <form onsubmit="return checkdatetime()"< /span>> 
  2.         <input onclick="WdatePicker({dateFmt:'<%=Wcsecondhit.FORMAT_EXPIRE_DT%>'})" id="expireDtString" name="expireDtString"  /> 
  3.         <input onclick="WdatePicker({dateFmt:'<%=Wcsecondhit.FORMAT_EXPIRE_DT%>'})" id="expireDtString" name="expireDtString"  /> 
  4.         <input type="submit" value="submit"/> 
  5.     </form> 

结果第一次弹出“请检查日期,开始时间晚于结束时间”提示后,无法再提交表单了。百度了一下,说的方法都不适用。

    我的解决方法是这样的:

  
  
  
  
  1. <form > 
  2.         <input onclick="WdatePicker({dateFmt:'<%=Wcsecondhit.FORMAT_EXPIRE_DT%>'})" id="expireDtString" name="expireDtString"  /> 
  3.         <input onclick="WdatePicker({dateFmt:'<%=Wcsecondhit.FORMAT_EXPIRE_DT%>'})" id="expireDtString" name="expireDtString"  /> 
  4.         <input type="submit"  onclick="return checkdatetime()"< /span>  value="submit"/> 
  5.     </form> 

把该验证方法移到 submit的按钮中就OK了!

你可能感兴趣的:(chrome,表单多次提交)