JQuery函数只允许文本框中的字母表无法正常工作

Ajm*_*eel 5 javascript jquery

我使用以下JQuery函数来限制用户在文本框中写入数值.代码工作正常,但问题是它还限制用户使用其他字符,如句号(.),逗号(,),$,@和其他符号..它也不允许用户使用复制和过去.我只想限制用户编写数字值或数字,但应允许用户使用其他字符.

$(function() {
  $('.txtOnly').keydown(function(e) {
    if (e.shiftKey || e.ctrlKey || e.altKey) {
      e.preventDefault();
    } else {
      var key = e.keyCode;
      if (!((key == 8) || (key == 32) || (key == 46) || (key >= 35 && key <= 40) || (key >= 65 && key <= 90))) {
        e.preventDefault();
      }
    }
  });
});
Run Code Online (Sandbox Code Playgroud)

Tim*_*ger 7

希望这可以帮助:

<!DOCTYPE html>

<html lang="en">
    <head>
        <script src="jquery-1.12.2.js"></script>
    </head>
    <body>
        <input class="txtOnly" id="txtOnly" name="txtOnly" type="text" />
        <script>
            $( document ).ready(function() {
                $( ".txtOnly" ).keypress(function(e) {
                    var key = e.keyCode;
                    if (key >= 48 && key <= 57) {
                        e.preventDefault();
                    }
                });
            });
        </script>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)