我正在寫一個小型的jQuery表單例程,旨在幫助用戶填寫一組銀行排序代碼字段。有3個字段 - 當用戶在一個字段中填入2個數字時,光標會自動在下一個字段上聚焦()。問題與鍵控和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