用jQuery keyup停止立即行动

时间:2015-07-24 17:08:02

标签: jquery

我想在一些文本框中允许用户输入0-9键和退格键,并且不允许其他人。我试过这个,但这不起作用..

 $('#UnitDistance').on('keyup', function (event) {
    var x = event.keyCode;        
    if (x != 8 || x < 48 || x > 57) {  // 48-57 is the code for key 0-9 .. 8 is backspace                      
        $('#UnitDistance').val('');
 });

有没有更好的想法呢。

2 个答案:

答案 0 :(得分:1)

您可以根据需要查看<input type='number' />,否则请尝试此操作。

$('#UnitDistance').on('keyup', function (event) {
    var b=$(this).val();
    b=b.replace(/[^0-9]/g,'')
    $(this).val(b);
});

答案 1 :(得分:0)

您只需调整条件,看看 WORKED FIDDLE

更新部分

 if (x != 8 && (x < 96 || x > 105)) {  // 96-105 is the code for key 0-9

完整JS:

$('#UnitDistance').on('keyup',function(event){
    var x = event.keyCode;   

     if (x != 8 && (x < 96 || x > 105)) {  // 96-105 is the code for key 0-9 .. 8 is backspace     
            $('#UnitDistance').val('');
     }
})