2016-03-04 34 views
0

所以这个问题是基于我最初的问题here已被回答和工作。但是,我发现现在如果需要,我无法从输入中删除数据。我添加了键码监视器,它应该允许退格键或删除键跳过跳转,但它似乎没有工作。无法删除输入字段中的数据

这里是工作jsfiddle

var inputs = $('input').not(':hidden').on('keydown', function(event) { 
    var keycode = (event.keyCode ? event.keyCode : event.which); 
    if (keycode !== 8 || keycode !== 46) { 
    if ($(this).val().length >= parseInt($(this).attr("maxlength"), 10)) { 
     var next = ((inputs.index($(this)) + 1) == inputs.length) ? 0 : inputs.index($(this)) + 1; 
     inputs.eq(next).focus(); 
    } 
    } 
}); 
+1

https://jsfiddle.net/6nsbzvkt/? – undefined

+0

@Vohuman谢谢我认为这个实际上比我的功能更好。 – Tim

+0

非常欢迎您! – undefined

回答

1

更换||&&

... 
if (keycode !== 8 && keycode !== 46) { 
... 

否则这种状况总是成功

+0

谢谢你的工作。但为什么AND而不是OR? – Tim

+1

@Tim,因为如果'keycode === 8''那么'keycode!== 46'返回true。换句话说'OR'运营商意味着如果其中一个条件成功 –

+0

duh,Yeah我在想别的东西。感谢完美的感觉, – Tim