私は、ユーザーが銀行のソートコードフィールドのグループを記入するのを助けるために設計された小さなjQueryフォームルーチンを書いています。 3つのフィールドがあります。ユーザーが1つのフィールドに2つの数字を入力すると、カーソルは次のフィールドに自動的にfocus()されます。keyupとshift +の問題
しかし、ユーザーが+タブを前のフィールドに戻すことを決定した場合、問題が発生します。このフィールドにすでに2文字が含まれている場合、カーソルはそのフィールド内に留まらず、再び前方にジャンプします。
HTML:
<div class="formItem sortCode clearfix">
<input type="text" maxlength="2">
<input type="text" maxlength="2">
<input type="text" maxlength="2">
</div>
のjQuery:
var $sortCollection = $('.sortCode input');
$('.sortCode input').keyup(function(event) {
var sortValue = $(this).val();
var sortPosition = $sortCollection.index(this);
if (!(event.keyCode == 9 && event.shiftKey)) {
if (sortValue.length == 2 && sortPosition != 2) {
sortPosition += 1;
$sortCollection.eq(sortPosition).focus().select();
}
}
});
私は問題を感じているが、Shiftキーを離すが、私はよく分からないときにトリガされてからkeyupイベントに行うことです。誰かが見てもらえますか?
あなたは新しいので、あなたが好きな答えの横にある小さな「チェック」をクリックすることで、この質問に回答としてマークしてください。 – AndyL