JS控制鍵盤錄入 和 window.event.keycode對照


一、只允許錄入整數

 1.不允許錄入非數字(按下字母鍵就會提示並清空)
  function intOnly() {
    if (!(window.event.keyCode >= 48 && window.event.keyCode <= 57
      ||window.event.keyCode==13 //回車符
    )) {
      window.event.keyCode = 0;
      alert("請輸入整數數字!");
    }
  }


 2.和intOnly()區別:輸入完成焦點離開后判斷數字是否合法
  function intOnly2(param) {
    var reg=/^([0-9]*)$/;
    var flag = reg.test(param.value);
    if(!flag){
      alert("請輸入整數數字!");
      param.value="";
    }
  }

 

二、只允許數字鍵錄入小數和整數

 1、錄入的同時進行判斷
  function numberOnly() {
    if (!(((window.event.keyCode >= 48) && (window.event.keyCode <= 57)) || (window.event.keyCode == 13) || (window.event.keyCode == 46))) {
      window.event.keyCode = 0;
      alert("請輸入數字!");
    }
  }
 2.和numberOnly()區別:輸入完成焦點離開后判斷數字是否合法
  function numberOnly2(param) {
    var reg=/^([0-9]+(\.?[0-9]+)?)$/;
    var flag = reg.test(param.value);
    if(!flag){
      if(param.value!=""){
        alert("請輸入數字!");
        param.value="";
      }
    }
  }

 

三、控制鍵盤輸入時只能輸入數字和'-',用於輸入負數

 1.錄入的同時進行判斷
  function fushuOnly() {
    if (!(((window.event.keyCode >= 48) && (window.event.keyCode <= 57)) || (window.event.keyCode == 13) || (window.event.keyCode == 46))) {
      window.event.keyCode = 0;
      alert("輸入有誤,請輸入數字!");
    }
  }


 2.和phoneOnly()區別:輸入完成焦點離開后判斷數字是否合法
  function fushuOnly2(param) {
    var reg=/^-?([0-9]+(\.?[0-9]+)?)$/;
    var flag = reg.test(param.value);
    if(!flag){
      if(param.value!=""){
        alert("輸入有誤,請輸入數字或者負數!");
        param.value="";
      }
    }
  }

四、控制鍵盤輸入時只能輸入數字和'-',用於限制電話號碼的輸入

 1.錄入的同時進行判斷
  function phoneOnly() {
    if (!(window.event.keyCode >= 48 && window.event.keyCode <= 57
      || window.event.keyCode == 45
      || window.event.keyCode == "\uff0d"
      ||window.event.keyCode==13 //回車符
    )) {
      alert("電話號碼輸入有誤,請輸入數字!");
      window.event.keyCode = 0;
    }
  }

 2.和phoneOnly()區別:輸入完成焦點離開后判斷數字是否合法
  function phoneOnly2(param) {
    var reg=/^([0-9]+(\-?[0-9]+)?)$/;
    var flag = reg.test(param.value);
    if(!flag){
      if(param.value!=""){
        alert("電話號碼輸入有誤,請輸入數字!");
        param.value="";
      }
    }
  }

 

五、檢查<html:file><input type="file">中地址所指文件是否是圖片類型

  function isImage(obj) {
    var str = obj.value;
    var temp = str.indexOf(".");
    if (temp > 0) {
      str = str.substring(temp + 1).toLowerCase();
      var myTypes = new Array("gif", "jpg", "jpeg", "png");
      for (i = 0; i < myTypes.length; i++) {
        if (str == myTypes[i]) {
          return;
        }
      }

      //請選擇格式為gif,jpg,jpeg,png的圖片
      alert("\u8bf7\u9009\u62e9\u683c\u5f0f\u4e3agif,jpg,jpeg,png\u7684\u56fe\u7247");
      obj.select();
    }
  }

 

 

 

 

 

 

=======================================華麗的分割線===================================================

 window.event.keyCode 代碼對照大全

  firefox2.0中不支持 window.event.keyCode,

    但是我們可以用event.which代替。但是為了使其能更具有普遍的兼容性,最好用event.keyCode|| event.which.

  Keycode對照表( 轉載自地址
字母和數字鍵的鍵碼值(keyCode)
按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼
A 65 J 74 S 83 1 49
B 66 K 75 T 84 2 50
C 67 L 76 U 85 3 51
D 68 M 77 V 86 4 52
E 69 N 78 W 87 5 53
F 70 O 79 X 88 6 54
G 71 P 80 Y 89 7 55
H 72 Q 81 Z 90 8 56
I 73 R 82 0 48 9 57

  

 

數字鍵盤上的鍵的鍵碼值(keyCode) 功能鍵鍵碼值(keyCode)
按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼
0 96 8 104 F1 112 F7 118
1 97 9 105 F2 113 F8 119
2 98 * 106 F3 114 F9 120
3 99 + 107 F4 115 F10 121
4 100 Enter 108 F5 116 F11 122
5 101 - 109 F6 117 F12 123
6 102 . 110        
7 103 / 111        

  

 

控制鍵鍵碼值(keyCode)
按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼
BackSpace 8 Esc 27 Right Arrow 39 -_ 189
Tab 9 Spacebar 32 Dw Arrow 40 .> 190
Clear 12 Page Up 33 Insert 45 /? 191
Enter 13 Page Down 34 Delete 46 `~ 192
Shift 16 End 35 Num Lock 144 [{ 219
Control 17 Home 36 ;: 186 \| 220
Alt 18 Left Arrow 37 =+ 187 ]} 221
Cape Lock 20 Up Arrow 38 ,< 188 '" 222

 

多媒體鍵碼值(keyCode)
按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼 按鍵 鍵碼
音量加 175            
音量減 174            
停止 179            
靜音 173            
瀏覽器 172            
郵件 180            
搜索 170            
收藏 171  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM