jQuery限制输入范围

时间:2016-06-30 16:20:31

标签: javascript jquery

我实现了以下jQuery脚本,它假设限制输入形式的输入。

<script language="JavaScript">
var inputPlz = $j( "span#spanvertragsnehmer_plz input.plz" );   

function attachEventHandlerToInputNumber(input) 
{
    input.on("keypress", function(key) 
    {
        if ((key.which != 8 && key.which != 0 && (key.which < 48 || key.which > 57)) || inputPlz.val().length > 4) 
        {
            return false;
        }
    });   
}

attachEventHandlerToInputNumber(inputPlz);
</script>

在下面的代码中,我可以限制输入,但一旦它变为5位数,我就不能再使用退格编辑数字了。这里有什么我想念的吗?谢谢。

1 个答案:

答案 0 :(得分:3)

只要输入长度为5+,无论按下什么键,此语句|| inputPlz.val().length > 4都会导致return false;行执行。退格键是一个像其他任何键一样的键,因此你不能在5位数后退格。

如果您想在输入5位数后允许退格,则可以将该段更改为|| (inputPlz.val().length > 4 && key.which != 8))