只需要输入数字即可 [英] Need to make input only take numbers

查看:85
本文介绍了只需要输入数字即可的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个输入框:

<input id="txtboxToFilter" type="text" placeholder="dd/mm/yyyy" />

现在,我希望它仅接受日期格式,因此,如果用户尝试输入字母,则不会让他...

Now I want it to only accept a date format, so if the user tries to enter a letter it doesn't let him...

我已经尝试过了:

    $("#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: home, end, left, right, down, up
        (e.keyCode >= 35 && e.keyCode <= 40)) {
             // 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();
    }
});

但是它不起作用...
有什么想法吗?

But it is not working...
any ideas?

推荐答案

仅接受此数字,您可以尝试

Only to accept the number, you can try this

$("#txtboxToFilter").forcenumeric();
$.fn.forcenumeric = function () {

         return this.each(function () {
             $(this).keydown(function (e) {
                 var key = e.which || e.keyCode;

                 if (!e.shiftKey && !e.altKey && !e.ctrlKey &&
                 // numbers   
                     key >= 48 && key <= 57 ||
                 // Numeric keypad
                     key >= 96 && key <= 105 ||
                 // Backspace and Tab and Enter
                    key == 8 || key == 9 || key == 13 ||
                 // Home and End
                    key == 35 || key == 36 ||
                 // left and right arrows
                    key == 37 || key == 39 ||
                 // Del and Ins
                    key == 46 || key == 45)
                     return true;

                 return false;
             });
         });
 };

这篇关于只需要输入数字即可的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆