2016-06-22 23 views
-3

Javascript(JQUERYではなく)から特殊文字とCTRL + Vを制限するにはどうすればよいですか?特殊文字と貼り付け文字を制限する

次のコードでは、( - )ハイフン以外の特殊文字を制限しようとしましたが、うまくいきます。ここでは貼り付けられた(CNTRL + V)文字を制限する条件を追加します。

function allowAlphaNumHyphen(evt){ 
    var keyCode = (evt.which) ? evt.which : evt.keyCode 
    if (((keyCode >= 48 && keyCode <= 90 && (keyCode<58 || keyCode>64)) || (keyCode > 96 && keyCode <= 122) || keyCode==8 || keyCode==127 || keyCode==45)){ 
     return true; 
    } 
    else{ 
     return false; 
    } 
} 
+1

ようこそ。 [ヘルプ]にアクセスし、[ツアー]を利用して何をどのように聞くかを確認してください。ヒント:コードと労力を表示する – mplungjan

答えて

0

上記の機能はonkeypressではから呼び出しているので、それはCNTR文字を考慮していない、以下のコードでonkeydownを使用して行うので、新しいコール

れるonkeypress

function allowAlphaNumHyphen(evt){ 
    var keyCode = (evt.which) ? evt.which : evt.keyCode 
      if ((((keyCode >= 48 && keyCode <= 90 && (keyCode<58 || keyCode>64)) || (keyCode > 96 && keyCode <= 122) || keyCode==8 || keyCode==127 || keyCode==45)) && !(keyCode==17)){ 
      return true; 
      } 
      else{ 
       return false; 
      } 
} 

にonKeyDown

function checkPastingChar(evt){ 
    var keyCode = (evt.which) ? evt.which : evt.keyCode 
    if((evt.ctrlKey && keyCode==86) || (evt.ctrlKey && keyCode==118)){ 
     return false; 
    }else{ 
     return true; 
    } 

}