Javascript 输入禁用复制和粘贴时的文本输入

Javascript 输入禁用复制和粘贴时的文本输入,javascript,jquery,Javascript,Jquery,下面的函数运行良好,但它当前停止粘贴文本和数字。 有没有办法只停止输入中的文本 var restrictInputToDigits = function(){ $('.digits').keypress(function(key) { if(key.charCode < 48 || key.charCode > 57) return false; }); $('.digits').bind('copy paste', function (e)

下面的函数运行良好,但它当前停止粘贴文本和数字。 有没有办法只停止输入中的文本

var restrictInputToDigits = function(){
    $('.digits').keypress(function(key) {
        if(key.charCode < 48 || key.charCode > 57) return false;
    });
    $('.digits').bind('copy paste', function (e) {
         e.preventDefault();
    });
}
var restrictInputToDigits=函数(){
$('.digits')。按键(功能(键){
如果(key.charCode<48 | | key.charCode>57)返回false;
});
$('.digits').bind('copy paste',函数(e){
e、 预防默认值();
});
}
我也希望粘贴数字。

$('.digits')。在('change keyup paste',函数(e)上{
$this=$(this);
$this.val($this.val().replace(/\D+/,“”));
如果(e.charCode<48 | | e.charCode>57){e.preventDefault();返回false;}
});

$('.digits')。在('change keyup paste',函数(e)上{
$this=$(this);
$this.val($this.val().replace(/\D+/,“”));
如果(e.charCode<48 | | e.charCode>57){e.preventDefault();返回false;}
});

首先获取文本字段的值。然后用空字符替换除数字以外的所有字符。这应该会有所帮助

$('.digits')。在('change keyup',function()上{
var value=$(this.val().toString().replace(/[^0-9]/g');
$(此).val(值);
});

首先获取文本字段的值。然后用空字符替换除数字以外的所有字符。这应该会有所帮助

$('.digits')。在('change keyup',function()上{
var value=$(this.val().toString().replace(/[^0-9]/g');
$(此).val(值);
});


显示输入的文本,然后将其删除。这是糟糕的用户体验。
keyup
就足够了。这会显示输入的文本,然后将其删除。这是糟糕的用户体验。
keyup
就足够了。答案与Mooseman几乎完全相同。如果我可以补充的话,可能会有同样的问题。是的,但我在更新他的帖子之前发布了。几乎和穆塞曼的答案完全一样。如果我可以补充的话,可能会有同样的问题。是的,但我在更新他的帖子之前发布了。