2014-09-30 78 views
0

在一些工作中,我試圖得到一個驗證表單爲我的網頁工作。在所有的警報中,如果我放置的所有功能都在工作。那是當我想要驗證表單的郵政編碼值來檢查它的所有數字它不起作用,並將甚至允許4位數字是字符。檢查變量是所有數字在網頁上的JavaScript

我試過很多方法,包括:

for (var i=0;i<document.OrderForm.Postcode.value.length;i++){ 
temp=document.OrderForm.Postcode.value.substring(i,i+1) 
if (digits.indexOf(temp)==-1){ 
alert("Invalid Phone Number !") 
return false 
    } 
} 

,我已經使用了測試功能,如

if(/^[0-9]+$/.test(document.OrderForm.Postcode.value)){ 
alert("Not a valid postcode") 
return false 
} 

我嘗試嘗試,我認爲這些幾乎每一個可能的組合和每一個變化我都能想到。任何想法或建議,將不勝感激,因爲我可能採購從舊問題的任何幫助等

乾杯, 傑西

回答

0

你可以嘗試使用功能是這樣的:

function checkPostcode(postcode) { 
    postcode = postcode.replace(/\s/g, ""); 
    var regex = /^[A-Z]{1,2}[0-9]{1,2} ?[0-9][A-Z]{2}$/i; 
    return regex.test(postcode); 
} 

這是一個英國郵政編碼的例子。你可以修改它的格式。

0

一種方法是使用鍵碼。

HTML:

<input type="text" class="textfield" value="" id="extra7" name="extra7" onkeypress="return isNumber(event)" /> 

JS:

function isNumber(evt) { 
    evt = (evt) ? evt : window.event; 
    var charCode = (evt.which) ? evt.which : evt.keyCode; 
    if (charCode > 31 && (charCode < 48 || charCode > 57)) { 
     return false; 
    } 
    return true; 
} 

Demo

可以使用HTML中的maxlength屬性限制輸入長度。

Source

另一種方式來做到這一點是使用HTML5輸入type="number"

相關問題