1

メールアドレスを検証するための次のコードがあります。

<html>
<head>
<script type="text/javascript">
function validate_email(field,alerttxt)
{
  with (field)
  {
    apos=value.indexOf("@");
    dotpos=value.lastIndexOf(".");
    if (apos<1||dotpos-apos<2) 
    {
      alert(alerttxt);
      return false;
    }
    else {return true;}
  }
}
function validate_form(thisform)
{
  with (thisform)
  {
    if (validate_email(email,"Not a valid e-mail address!")==false)
    {
      email.focus();
      return false;
    }
  }
}
</script>
</head>

今、体の部分に、私は追加しました

<body>
<form action="" method="post" onsubmit=validate_form(this) id="teacher_form">
</body>

ここで何が起こるかというと、メールアドレスが間違っている場合、メッセージとともにポップアップが表示されますが、フォームは受け入れられます。アラートが表示された後にフォームが受け入れられなくなった場合の解決策は何ですか?

4

1 に答える 1

3
<body>
<form action="" method="post" onsubmit="return validate_form(this)" id="teacher_form">
</body>

検証関数は正常に返されていますが、イベント ハンドラーfalseからも返されていません。onsubmitフォームが送信されないようにするには、これらの両方が発生する必要があります。

于 2013-08-16T05:10:56.757 に答える