JQuery数字验证

JQuery number only validation

本文关键字:验证 数字 JQuery      更新时间:2023-09-26
$('.alphaOnly').bind('keypress', function(event){
     var regex = new RegExp("^[ A-Za-z-.']*$");
     validation(event, regex);
});

这是我对输入中的数字的验证。它在台式机、iphone上运行得很好,但在安卓系统(尤其是三星手机)上就不行了。

你们有人遇到过这种问题吗?

有两种方法可以做到这一点。1. 使用javascript的onkeypress事件,并允许只输入数字值。这样,您将无法输入十进制值。

<input type="text" onkeypress='return event.charCode >= 48 && event.charCode <= 57'></input>
  • 检查下面的片段。通过这种方式,您将能够输入十进制值。
  • $(document).ready(function() {
      $("#txtboxToFilter").keydown(function (e) {
        // Allow: backspace, delete, tab, escape, enter and .
        if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
            // Allow: Ctrl+A
            (e.keyCode == 65 && e.ctrlKey === true) ||
            // Allow: Ctrl+C
            (e.keyCode == 67 && e.ctrlKey === true) ||
            // Allow: Ctrl+X
            (e.keyCode == 88 && e.ctrlKey === true) ||
            // Allow: home, end, left, right
            (e.keyCode >= 35 && e.keyCode <= 39)) {
          // let it happen, don't do anything
          return;
        }
        // Ensure that it is a number and stop the keypress
        if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
          e.preventDefault();
        }
      });
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
    <input type="text" id="txtboxToFilter" />

    也许你应该试试这个方法

    var regex = new RegExp('''d');
    

    没有三星,但在我的安卓设备上可以正常工作jsfiddle .