2016-06-30 6 views
1

入力フォームに入力を制限すると仮定した次の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

_Yes_、 'inputPlz.val()にそのセグメントを変更することができます入力されている5+たら、バックスペースを許可する場合。長さ> 4' – Rayon

答えて

3

この文|| inputPlz.val().length > 4は、どのキーが押されても、入力の長さが5+になるたびにreturn false;行が実行されます。バックスペースは他のキーのようにキーですので、5桁を超えるとバックスペースできません。

あなたは数字は、あなたが|| (inputPlz.val().length > 4 && key.which != 8))

+0

私はそう思いますstupid..didn't – muktoshuvro

+2

愚かではない、それはあなたが以前に '!= 8'を扱っているように見えるので、やっかいだった。私はあなたのプロジェクトに幸運を助けることができてうれしい! – IrkenInvader