Javascript 禁用所有关键点,但复制粘贴组合

Javascript 禁用所有关键点,但复制粘贴组合,javascript,jquery,html,Javascript,Jquery,Html,我正在为数字字段编写代码,我已禁用除数字键以外的所有键 功能验证(事件){ var charCode=event.keyCode; 如果(charCode!=190&&charCode!=40&&charCode!=39&&charCode!=38&&charCode!=37&&charCode!=46&&charCode>31&&charCode57)&(charCode105)) 返回false; } 希望这会有所帮助 $('input[type="number"]').keypress(

我正在为数字字段编写代码,我已禁用除数字键以外的所有键

功能验证(事件){
var charCode=event.keyCode;
如果(charCode!=190&&charCode!=40&&charCode!=39&&charCode!=38&&charCode!=37&&charCode!=46&&charCode>31&&charCode<48 | | charCode>57)&(charCode<96 | | charCode>105))
返回false;
}

希望这会有所帮助

$('input[type="number"]').keypress(function(e){
  //Numbers 47 to 57 are the key code of digit 0 to 9.
  if (![48,49,50,51,52,53,54,55,56,57].includes(e.keyCode)){
    e.preventDefault();
  }
});

您可以按如下方式执行此操作:)

var被按下=false;
$(“#数字输入”)。在('keydown',函数(e)上{
var代码=e.which;
如果((代码>47&&code<59)| |(代码>95&&code<106)| | |(按下了| ctrl |&&(代码==67 | |代码==86))){
返回true;
}否则,如果(代码==17){
是否按ctrl键=真;
}否则{
返回false;
}
});
$(“#数字输入”)。在('keyup',函数(e)上{
如果(e.which==17){
是否按ctrl键=false;
}
});

never,never,never禁用ctr+c、ctr+v、ctr+。。或者右键单击,对于数字,使用输入类型numberit不是我自己决定的,你能帮我吗?:你可能会认为我没有更多的定制,但感谢MalalInVasuCu,而不是像这样的临时补丁,你可以使用所有这些按键。你也可以为这个输入设置MI/MAX值。默认情况下,复制/粘贴是允许的。我已经启用了0到9个数字,我需要启用CTRL+C和CTRL+。v@AftabIshfaq为什么你需要启用它们,它们已经启用。我得到了逻辑,我会努力让它工作。非常感谢!
var is_ctrl_pressed = false;
$('#number_input').on('keydown', function(e) {
    var code = e.which;
    if ((code > 47 && code < 59) || (code > 95 && code < 106) || (is_ctrl_pressed && (code == 67 || code == 86))) {
        return true;
    } else if (code == 17) {
        is_ctrl_pressed = true;
    } else {
        return false;
    }
});
$('#number_input').on('keyup', function(e) {
    if (e.which == 17) {
        is_ctrl_pressed = false;
    }
});