Webページに電話番号を入力するための3つの入力ボックスがあります。
XXX XXX XXXX
入力時にボックス間でユーザーを移動するJavaScriptが必要です。3番目の文字の後、2番目のボックスなどに移動します。
過去に、私はバックスペースで問題を抱えていました。2番目のボックスからバックスペースをクリックすると、最初のボックスに移動しますが、2番目のボックスに戻ります。
これを行うための最良の方法は何ですか?
Webページに電話番号を入力するための3つの入力ボックスがあります。
XXX XXX XXXX
入力時にボックス間でユーザーを移動するJavaScriptが必要です。3番目の文字の後、2番目のボックスなどに移動します。
過去に、私はバックスペースで問題を抱えていました。2番目のボックスからバックスペースをクリックすると、最初のボックスに移動しますが、2番目のボックスに戻ります。
これを行うための最良の方法は何ですか?
jQuery AutoTabを使用する必要があります
このようなコード例
<div><strong>Phone Number:</strong></div>
<input type="text" name="area_code" id="area_code" maxlength="3" size="3" /> -
<input type="text" name="number1" id="number1" maxlength="3" size="3" /> -
<input type="text" name="number2" id="number2" maxlength="4" size="5" />
<script type="text/javascript">
$(document).ready(function() {
$('#area_code').autotab({ target: 'number1', format: 'numeric' });
$('#number1').autotab({ target: 'number2', format: 'numeric', previous: 'area_code' });
$('#number2').autotab({ previous: 'number1', format: 'numeric' });
});
</script>
個人的には、ほとんど何でも受け入れて、サーバー側で再フォーマットすることを心配します。私はあまりにも多くの悪いjavascript電話フォーマッターを使わなければならなかったので、私は大ファンではありません。
3 つではなく、このワンボックス ソリューションを使用することをお勧めします。これにより、ボックス間を行き来し、最初のボックスで.select()
. ラッキー。
http://javascript.internet.com/forms/format-phone-number.html
必要なすべてのオートフォーマット。もちろん、これは北米の標準であり、これを RestOfTheWorld 用に変更する必要があります。
キー リスナーを使用して、最初のフィールドにフォーカスがあるときに入力をチェックし、既に入力された文字数を数え、十分な数の文字が入力されている場合はフォーカスを 2 番目のフィールドに移動します。
お役に立てれば、
ユヴァル=8-)