2013-08-07 50 views
1

任何人都可以幫助我進行簡單的jquery數字驗證嗎?簡單的數字驗證jQuery中的輸入

<input type="text" name="yourphone" id="yourphone" required style="border-radius:6px; border:1px solid #ccc; width:300px; height:25px;" /> 
<input type="submit" value="Send Inquiry" class="button" id="mySubmitButton" /> 
+0

數字驗證是​​爲了什麼?檢查整數?花車?最大/最小?我從閱讀代碼中假設電話號碼。告訴我們你正在嘗試做什麼,以及你已經試圖實現它。 –

+2

當然,將輸入類型從'text'改爲'number'! – adeneo

+0

在右邊,在右邊的列表中右邊的所有答案 – mplungjan

回答

6

你可以改變你的輸入類型設置爲數字像<input type="number"...(雖然不是所有的瀏覽器都支持HTML5輸入類型)。

或者您可以使用此:

$('#myform').on('submit', function(){ 
    var value = $('#yourphone').val() 
    return $.isNumeric(value); 
}); 

,但電話號碼可以是複雜的,不只是數字。

如果用戶使用+()-.,您可以使用此:
demo

$('#myform').on('submit', function(){ 
    var value = $('#yourphone').val() 
    var regex = new RegExp(/^\+?[0-9(),.-]+$/); 
    if(value.match(regex)) {return true;} 
    return false; 
}); 
+0

或只是'返回$ .isNumeric(值);' – mplungjan

+0

是的,做到了這一點,並增加了一個正則表達式的選擇。 – Sergio

0
$('#myform').on('submit', function(){ 

    var value = $('#yourphone').val() 
    var regex = new RegExp(/^\+?[0-9(),.-]+$/); 
    if(value.match(regex)) {return true;} 
    return false; 
}); 
0
<script type="text/javascript"> 
    var specialKeys = new Array(); 
    specialKeys.push(8); //Backspace 
    $(function() { 
     $(".numeric").bind("keypress", function (e) { 
      var keyCode = e.which ? e.which : e.keyCode 
      var ret = ((keyCode >= 48 && keyCode <= 57) || specialKeys.indexOf(keyCode) != -1); 
      $(".error").css("display", ret ? "none" : "inline"); 
      return ret; 
     }); 
     $(".numeric").bind("paste", function (e) { 
      return false; 
     }); 
     $(".numeric").bind("drop", function (e) { 
      return false; 
     }); 
    }); 
</script>