0

在我的項目中,我必須阻止用戶窗體在文本框中輸入以下字符。如何用JavaScript/Jquery實現這一點,我在asp.net web應用程序中使用它。JavaScript或jquery代碼來防止數字鍵盤上的特殊字符

+0

我可能會建議,在這種情況下,像許多但不是所有驗證的情況下,它可能會更好擁有一組允許的字符而不是一組禁止的字符。 – 2011-03-25 13:23:58

回答

0
<body> 
    <input type="text" id="keys"> 
    <script> 
    var forbidden = /[\!\@\#\$\%\^\&\*\(\)]/g; 
    var field = document.getElementById('keys'); 

    field.addEventListener("keyup", function (evt) { 
     var val = field.value; 
     if (forbidden.test(val)) { 
      field.value = val.replace(forbidden, ""); 
     } 
    }, false); 
    </script> 
</body> 
+0

這也清除非法字符複製+粘貼時,而keydown沒有。 – zvona 2011-03-25 13:33:49

0

試試這個代碼爲每個字符。

$('input:text').keydown(function(e){ 
    if(e.shiftKey && (e.keyCode == 192 || e.keyCode == 49 || 
    e.keyCode == 222 || e.keyCode == 52 || e.keyCode == 53 || 
    e.keyCode == 54 || e.keyCode == 55 || e.keyCode == 56 || 
    e.keyCode == 57 || e.keyCode == 48)){ 
     return false; 
    } 
}) 

你可以嘗試how do i block or restrict special characters from input fields with jquery?

哦,是和驗證輸入服務器端以及