我在ASP.NET中有一個文本字段,我只想在該字段中只允許字母數字和正斜槓(/)鍵。我想下面的代碼,只允許在文本框中使用字母,數字和正斜槓的JQuery
function jsCheckInput(e) {
var evt = (e) ? e : window.event;
var key = (evt.keyCode) ? evt.keyCode : evt.which;
if (key != null) {
key = parseInt(key, 10);
if (key < 47 || (key > 57 && key < 65) || (key > 90 && key < 97) || key > 122) {
if (!jsIsUserFriendlyChar(key)) {
return false;
}
}
else {
if (evt.shiftKey) {
return true;
}
}
}
return true;
}
function jsIsUserFriendlyChar(val) {
// Backspace, Tab, Enter, Insert, and Delete
if (val == 8 || val == 9 || val == 13 || val == 45 || val == 46) {
return true;
}
// Ctrl, Alt, CapsLock, Home, End, and Arrows
if ((val > 16 && val < 21) || (val > 34 && val < 41)) {
return true;
}
return false;
}
在Web窗體頁我加入類似下面,
<asp:TextBox ID="text_value" CssClass="textbox" onkeydown="return jsCheckInput(event);" runat="server"></asp:TextBox>
在這裏,我能夠進入字母和數字,但我不能夠進入價值/
。我已經啓用了shift鍵,所以我可以給shift + ?
輸入正斜槓。另外一個問題是,當我按shift +任意數字鍵時,像! @ # $ %^& * () ...
那樣的特殊字符也會進入tet場。我在這裏做錯了什麼?
使用正則表達式 – Dherya
這可能幫助:http://stackoverflow.com/questions/8661254/javascript-only-allow-alphanumeric-and-hyphen-value-in-text-field – Rajesh
這個回答可以幫助你:HTTP ://stackoverflow.com/questions/469357/html-text-input-allow-only-numeric-input – Tecnologer