document.forms [0] .onsubmit没有完全正常工作......问题是什么?

时间:2013-03-27 15:44:47

标签: javascript javascript-events

所以我在我的代码中使用document.forms [0] .onsubmit检查我的应用程序的文本字段中是否存在两个重复值,如果用户输入两个相同的数字,那么当您单击提交时,弹出警告框,告诉你两个数字相同..这部分工作正常..但在更改值和不同的数字后,我仍然从警告框中得到相同的文字说这两个数字是相同的..看起来我的更改在第一个错误得到纠正后根本无法识别。我怎样才能真正让提交过程识别出错误发生了变化。下面是相关的代码..我希望能够使用我已经拥有的代码在Javascript中纠正这个问题。感谢

if(duplicate(esnList)){
  document.forms[0].onsubmit = function () { 
      alert ("ERROR: You can have duplicate ESNs in the ESN text field."); 
      return false; 
  }
}



<input class="submit" type="submit" name="submit" value="Provision Unit(s)" tabindex="13">

1 个答案:

答案 0 :(得分:1)

您应该在功能内部进行检查。

  document.forms[0].onsubmit = function () { 
    if(duplicate(esnList)) {
      alert ("ERROR: You can have duplicate ESNs in the ESN text field."); 
      return false; 
    }
  }

您必须始终提供有条件地显示消息的回调,而不是有条件地提供始终显示错误消息的回调。