2013-03-08 55 views
-1

我已經開始了一個新的JavaScript任務,它告訴我用一個字段和一個按鈕驗證一個表單。每當我輸入一個隨機數時,一個警告框就會出現,答案是「數字大於/小於10」。目前爲止這麼好 - 我完成了這部分任務。 問題出現,當我輸入字母時,無論如何都會出現警告框。 這怎麼解決?Javascript數字表單驗證,只有數字字符問題

代碼如下所示:

function validate(){ 
    x=document.myForm 
    txt=x.myInput.value 
    if (txt>=10) 

    { 
     alert("Number is bigger than 10") 
     return true 

    } 

    else 

    { 
     alert("Number is smaller than 10") 
     return false 
    } 

}

<form name="myForm" onsubmit="return validate()"> 
Enter a number: 
<input type="text" name="myInput" size="20"> 
<input type="submit" value="Submit"> 

謝謝您的解答!

+0

在看一看:http://stackoverflow.com/questions/895659/how-do-i-block-or-restrict-special -characters-from-input-fields-with-jquery – benzonico 2013-03-08 13:30:52

+0

如果文本框只允許int值> = 10 – 2013-03-08 13:34:10

+1

應該有1000個鏈接來告訴你如何處理這個問題。盡你所能,讓網絡不是垃圾! – hop 2013-03-08 13:35:18

回答

-1

你可以添加一個else if語句可你的代碼象下面這樣:

X = document.myForm.myInput.value;

else if(isNaN(x)) 

    { 
     alert("Number cant be alphabet") 
     return false 
    } 

下面是完整的腳本

<script> 
      function validate(){ 
    x=document.myForm.myInput.value; 

    if (x >=10) 

    { 
     alert("Number is bigger than 10") 
     return true 

    } 

    else if(isNaN(x)) 

    { 
     alert("Number cant be alphabet") 
     return false 
    } 
    else 

    { 
     alert("Number is smaller than 10") 
     return false 
    } 

} 
    </script> 
-1

您可以使用parseInt。

txt = parseInt(x.myInput.value,10);