2009-11-16 169 views
2

我需要這樣做,因此用戶只能在我的輸入框中輸入a-z0-9。我怎樣才能讓用戶無法輸入其他字符?如果這是不可能的,我怎麼才能用正則表達式檢查輸入?使用JavaScript驗證用戶輸入

謝謝!

+0

http://stackoverflow.com/questions/1344319/how-to-validate-input-using-javascript – svinto 2009-11-16 02:08:39

+0

這並不是什麼我需要,我需要防止用戶輸入不是a-z0-9的東西,他們甚至不應該能夠在輸入框中輸入。 – Cyclone 2009-11-16 02:10:10

+0

你使用jQuery(或其他JavaScript庫),還是在尋找純JavaScript? – 2009-11-16 02:10:43

回答

2

如果您使用的是jQuery,那麼它就是您所需要的format plugin。除此之外,你可以使用onkeyup/onkeyup來調用函數來驗證輸入與正則表達式模式。

+0

看起來不錯,我會給它一個鏡頭 – Cyclone 2009-11-16 02:15:52

0

請確保您還服務器上執行驗證過(假設有一個服務器部分),以防某些用戶關閉了javascript。

1

下面是一個真實改編自this page一點的解決方案:

window.onload = function() { 
    document.forms.myForm.myField.onkeypress = keyTest; 
} 

function keyTest(e) 
{ 
    var key = window.event ? e.keyCode : e.which; 
    var keychar = String.fromCharCode(key); 
    reg = /[a-z0-9]/i; 

    if (key != 8 && key != 9) return reg.test(keychar); 
}