国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

利用Keydown事件阻止用戶輸入實現代碼

2024-05-06 16:02:41
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了利用Keydown事件阻止用戶輸入的具體實現,需要的朋友可以參考下

先了解下各事件的區別

KeyDown:在控件有焦點的情況下按下鍵時發生
KeyPress:在控件有焦點的情況下按下鍵時發生
KeyUp: 在控件有焦點的情況下釋放鍵時發生

1、KeyPress主要用來接收字母、數字等ANSI字符。KeyDown 和 KeyUP 事件過程通常可以捕獲鍵盤除了PrScrn所有按鍵(這里不討論特殊鍵盤的特殊鍵

2、KeyPress 只能捕獲單個字符,KeyDown 和KeyUp 可以捕獲組合鍵。

3、KeyPress 不顯示鍵盤的物理狀態(SHIFT鍵),而只是傳遞一個字符。KeyPress 將每個字符的大、小寫形式作為不同的鍵代碼解釋,即作為兩種不同的字符。KeyDown 和KeyUp 不能判斷鍵值字母的大小。KeyDown 和 KeyUp 用兩種參數解釋每個字符的大寫形式和小寫形式:keycode — 顯示物理的鍵(將 A 和 a 作為同一個鍵返回)和 shift —指示 shift + key 鍵的狀態而且返回 A 或 a 其中之一。

5、KeyPress 不區分小鍵盤和主鍵盤的數字字符,KeyDown 和KeyUp 區分小鍵盤和主鍵盤的數字字符。

6、KeyDown、KeyUp事件是當按下 ( KeyDown ) 或松開 ( KeyUp ) 一個鍵時發生的。由于一般按下鍵盤的鍵往往會立即放開(這和鼠標不同),所以這兩個事件使用哪個差別不大。而且,up和其他兩者還有一個區別:要判斷key修改后的狀態必須用up。

我們可以利用keydown事件來阻止用戶的輸入,比如某輸入域只能輸入數字

鍵盤上數字鍵的keyCode

[48-57] 數字鍵
[96-105] 數字小鍵盤
此外允許Backspace鍵刪除

代碼如下

復制代碼 代碼如下:


var input = document.getElementById('number_ipt')
input.onkeydown = function(e) {
var keyCode = e.keyCode
if ( !isNumber(keyCode) ) return false
}

// 僅能輸入數字
function isNumber(keyCode) {
// 數字
if (keyCode >= 48 && keyCode <= 57 ) return true
// 小數字鍵盤
if (keyCode >= 96 && keyCode <= 105) return true
// Backspace鍵
if (keyCode == 8) return true
return false
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 邵武市| 太保市| 额尔古纳市| 阿巴嘎旗| 宁陕县| 疏勒县| 广东省| 四子王旗| 文昌市| 墨玉县| 玉山县| 华亭县| 金坛市| 长汀县| 东光县| 汾西县| 客服| 香格里拉县| 景宁| 宜城市| 长泰县| 定边县| 平武县| 东明县| 荔浦县| 九江县| 师宗县| 封开县| 德钦县| 平潭县| 东丽区| 阳谷县| 宁晋县| 永城市| 错那县| 新安县| 纳雍县| 沧州市| 壶关县| 当阳市| 蛟河市|