2012-01-11 8 views
0

を失敗し、それが空に textfiledを表示し、それはいくつかのエラーを与えるべきであることを、むしろtrueを返しますクリックします。フォームの検証は、私は、フォームを持っており、以下のコード 、いつ提出され

そのシンプルなフォームの検証

HTML

<form name="rt-form2" method="post" onsubmit="return validateform();"> 
<input type="text" value="Name" name="name2" id="name1"><br> 

<input type="text" value="Email" name="Email" id="Email1"><br> 

<input type="text" value="Phone Number" name="phone" id="phone1"><br> 

<input type="submit" value="submit" name="submitm" class="submit-btn"> 
</form> 

とjavascriptの検証が

<script type="text/javascript"> 
function validateform(){ 
alert("Submit button is clicked"); 


    if(document.rt-form2.name2.value.length < 1) { 
     alert("Enter name"); 
     return false; 
    } 
    else { 
     alert("Submitting"); 
     return true; 
    } 


} 

</script> 
+0

document.rt-form2.name2.value.lengthセレクタも機能しますか? – anderssonola

答えて

0

あなたのスクリプトは正しいですか。あなたのフォーム名からハイフンを削除するだけでいいですよ!

0

これを試してみてください:デフォルトでは、あなたが値を持っている

<body> 
    <head>  
<script type="text/javascript"> 
function validateform() 
{ 
    alert("Submit button is clicked"); 
    var namelength = document.formulari.name2.value.length; 
    if(namelength < 1) 
    { 
     alert("Enter name"); 
     return false; 
    } 
    else 
    { 
     alert("Submitting"); 
      return true; 
    } 
} 

</script> 
    </head> 
<form name="formulari" method="post" onsubmit="return validateform();"> 
<input type="text" name="name2" id="name2"><br> 

<input type="text" name="Email" id="Email1"><br> 

<input type="text" name="phone" id="phone1"><br> 

<input type="submit" value="submit" name="submitm" class="submit-btn"> 
</form> 
</body> 

場合fi (value="Name")、「空の」エラーは起動しません。これはデフォルト値を取得しているためです。
EDIT:偶然にフォーム名の名前を付け加えることを忘れました。私が下の私のコードで行ったように。

+0

誰でもダウンボートをしたのですが、なぜ私が次の回答で改善できるのか説明できますか? – Nobita

1

私はこれを再書いており、フォームの名前からエラーが発生しているようです。 javascript内の ' - 'を使用するとエラーが発生していました。私が '_'に切り替えると、うまくいくように見えます。

jsFiddle

私は、デフォルトの値を入力することができますし、またクラスrequiredですべてのフィールドを検証jQueryを使って同じことを行っています。これは、デフォルト値が変更されたことを検証し、選択されたときにフィールドをクリアするため、わずかに複雑です。

my Validation

0
function validateForm() 
     { 
     var x=document.forms["formElem"]["name"].value; 
     if (x==null || x=="" || x=="Name") 
      { 
      alert("All fields must be filled out"); 
      return false; 
      } 

     var x=document.forms["formElem"]["hnumber"].value; 
     if (x==null || x=="" || x=="Phone") 
      { 
      alert("All fields must be filled out"); 
      return false; 
      } 

     var x=document.forms["formElem"]["mnumber"].value; 
     if (x==null || x=="") 
      { 
      alert("All fields must be filled out"); 
      return false; 
      } 

      alert('Thanks for applying. Someone from HR will contact you shortly.'); 
    } 

これは私が使用する本当に簡単なスクリプトです。

関連する問題