0

したがって、コードで document.forms[0].onsubmit を使用して、アプリケーションのテキスト フィールドに 2 つの重複する値が存在するかどうかを確認しています。ユーザーが同じ 2 つの数字を入力した場合、送信をクリックするとアラートが表示されます。ボックスがポップアップして、2 つの数字が同じであることが示されます..その部分は正常に動作します..しかし、値を変更して異なる数字を指定した後でも、2 つの数字が同じであるという警告ボックスから同じテキストが表示されます..それ最初のエラーが修正された後、変更がまったく認識されないように見えます..エラーへの変更が行われたことを送信プロセスに実際に認識させるにはどうすればよいですか。以下は関連するコードです。可能であれば、すでに持っているコードを使用して 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">
4

1 に答える 1

1

関数内でチェックを行う必要があります。

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

常にエラー メッセージを表示するコールバックを条件付きで提供する代わりに、条件付きでメッセージを表示するコールバックを常に提供する必要があります。

于 2013-03-27T15:46:21.817 に答える