我在我的網站登錄中實現了雙因素身份驗證,我會創建一個頁面,例如蘋果的雙因素身份驗證頁,其中包含6個文本輸入,每個代碼一個。如果我填充或清空它,這些輸入許可證可以前後移動。 我試過但我有很多問題。在填充或清空時移動輸入文本
- 當所有的輸入都填滿了,我在最後一個,並嘗試用「退格」刪除,它刪除前一個,而不是最後一個。
- 當我將光標移動到填充的輸入上時,它會自動進入下一個。
$(".digit-input").keyup(function() {
if (this.value.length == this.maxLength) {
$(this).next('.digit-input').focus();
}
verificaSePieno();
});
$(".digit-input").keydown(function(e) {
if ((e.which == 8 || e.which == 46) && $(this).text() == "") {
$(this).prev('.digit-input').focus();
}
verificaSePieno();
});
function verificaSePieno() {
if ($("#digit1").text() != "" && $("#digit2").text() != "" && $("#digit3").text() != "" && $("#digit4").text() != "" && $("#digit5").text() != "" && $("#digit6").text() != "") {
$("#submitBtn").removeClass("disabled");
} else {
$("#submitBtn").addClass("disabled");
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="digits">
<input id="digit1" name="digit1" class="digit-input" data-indx="0" data-next-id="digit2" value="" size="1" maxlength="1" autocomplete="off" type="text">
<input id="digit2" name="digit2" data-prev-id="digit1" class="digit-input" data-indx="1" data-next-id="digit3" value="" size="1" maxlength="1" autocomplete="off" type="text">
<input id="digit3" name="digit3" data-prev-id="digit2" class="digit-input" data-indx="2" data-next-id="digit4" value="" size="1" maxlength="1" autocomplete="off" type="text">
<input id="digit4" name="digit4" data-prev-id="digit3" class="digit-input" data-indx="3" data-next-id="digit5" value="" size="1" maxlength="1" autocomplete="off" type="text">
<input id="digit5" name="digit5" data-prev-id="digit4" class="digit-input" data-indx="4" data-next-id="digit6" value="" size="1" maxlength="1" autocomplete="off" type="text">
<input id="digit6" name="digit6" data-prev-id="digit5" class="digit-input" data-indx="5" value="" size="1" maxlength="1" autocomplete="off" type="text">
</div>