2012-01-11 221 views
0

我有一個表單,下面是代碼 而當點擊提交時,它返回true而不是顯示 textfiled爲空,它應該會給出一些錯誤。表單驗證失敗

它是一個簡單的表單驗證

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

does document.rt-form2.name2.value.length選擇器甚至工作? – anderssonola 2012-01-11 14:46:33

回答

0

Dude your script is correct。只需從您的表單名稱中刪除連字符,您就可以走了!

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> 

如果默認在您的有一個值科幻(value="Name")它不會啓動「空」錯誤。因爲正在獲取該默認值。
編輯:我忘了補充一點,你必須偶然使用表單名稱。正如我在下面的代碼中所做的那樣。

+0

無論誰做了downvote,他能解釋爲什麼我可以改進我的下一個答案嗎? – Nobita 2012-01-11 14:58:50

1

我重新這個,它似乎錯誤來自窗體的名稱。在javascript中使用' - '會引發錯誤。一旦我切換到'_',它似乎工作正常。

jsFiddle

我已經做了與jQuery一樣的東西,可以讓你輸入一個默認值,並驗證所有現場帶班required。它只是稍微複雜一些,因爲它驗證了默認值已被更改,並且在選中時清除該字段。

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.'); 
    } 

這是我用一個很簡單的腳本。