-1

私はJavascriptが初めてで、フォームの検証を試みています。

ここで何が間違っているのかわかりません。ヒントはありますか?

<HTML>
<HEAD>
      <TITLE>Comment Form</TITLE>

      <script type ="text/javascript"> 
          function Validate() {
          }

          Message = ""
          Message = Message + CheckName()
          Message = Message + CheckEmail()
          Message = Message + CheckComments()


         if (Message =="") {
             return true
         }
         else {
            alert(Message)
            return false
         }

    }

    funtion CheckName()
        UserName = document.f1.Name.value

        if(UserName =="") {
             Message ="Please enter your name"
        }
else 
Message=""
}
return Message 

}

//メールチェック中:

function CheckEmail() {
email = document.f1.Email.value
AtPos = email.indexOf("@")
StopPos = email.lastIndexOf(".")
Message = ""

if (email == "") {
Message = "Not a valid Email address" + "\n"
}

//if blank: 

if (AtPos == -1 || StopPos == -1) {
Message = "Not a valid email address"
}

//if no @ and no . 


if (StopPos < AtPos) {
Message = "Not a valid email address"
}

//if . before @ 

if (StopPos - AtPos == 1) {
Message = "Not a valid email address"
} 

return Message
}

終了スクリプトの下のセクションに何か欠けている可能性がありますか? アクションフィールドに何か「」を入れる必要がありますか? スペースを埋めるためだけにここに何を入れるつもりなのか、もっとテキストを入れるように私に求めていますか? 私がここでやろうとしていることを達成する別の方法はありますか? これは時代遅れの方法ですか?

</script>
</HEAD>
<BODY BGCOLOR = White>
<form name="f1" method="post" action="" onSubmit="return Validate()" enctype = text/plain>
  <table width="672" border="0" cellpadding="0" cellspacing="0">
    <tr> 
      <td width="142" valign="top" rowspan="4">&nbsp;</td>
      <td valign="top" height="45" colspan="4" align="center"> <b>Name:</b> 
        <input type="text" name="Name" size="30">
      </td>
    </tr>
    <tr> 
      <td height="40" valign="top" colspan="4" align="center"><b>Email: 
        <input type="text" name="Email" size="30">
                <td height="151" valign="top" colspan="4" align="center"> 
        <textarea name="Comments" cols="40" rows="7">Add Your Comments here</textarea>
      </td>

    </tr>
       </form>
</BODY>
</HTML>
4

2 に答える 2

0

まず第一に、検証関数をすぐに閉じます

function Validate() {
}

そう呼ぶ

OnSubmit=Validate()

絶対に何もしません。

終了 } を削除することから始めて、Va​​lidate 関数に実際に検証ロジックが含まれていることを確認します。

于 2013-09-27T12:18:18.993 に答える
0

次のリンクを使用してください

フォームの検証

そして確かに、どのものが何に使用されているかを説明して答えを得ることができますか?

于 2013-09-27T12:18:42.787 に答える