blood-moon
@blood-moon
Маленький фрилансер

Автоотправка формы на мобильных, реализация?

Ребят , есть форма (вроде ввода 4 значного пин пароля)
Как сделать автоотправку формы когда человек ввёл всё?
Сейчас такой код
<form action="pin.php" method="post" id="formPin">
			<input required name="pin1" type="tel" maxlength="1" tabindex="1" class="display-otp-box" data-key="otp1" placeholder="•">
			<input required name="pin2" type="tel" maxlength="1" tabindex="2" class="display-otp-box" data-key="otp2" placeholder="•">
			<input required name="pin3" type="tel" maxlength="1" tabindex="3" class="display-otp-box" data-key="otp3" placeholder="•">
			<input required name="pin4" type="tel" maxlength="1" tabindex="4" class="display-otp-box" data-key="otp4" placeholder="•">
			<input type="hidden" name="PIN" value="ok">

		</form>

И JS
<script type="text/javascript">
$('.display-otp-box').on('keyup', function (e) {
  var key = event.keyCode || event.charCode;
  /* for backspace, will move to the previous box */ 
  if( key === 8 || key === 46 ){
     $(this).prev('input').focus();
     return;
  }
  $(this).next('input').focus();
 });
</script>
<script type="text/javascript">

	var form = $('#formPin');
    var inputs = form.find('input');
    form.change(function(){
        var status = [];
        inputs.each(function(){
            if(this.value == ''){
                return status.push('no');
            }
            else{
                return status.push('ok');
            }
        });
        if(status[0] == 'ok' && status[1] == 'ok' && status[2] == 'ok' && status[3] == 'ok' && status[4] == 'ok'){
        	form.submit();
        }
    });

</script>

Но тут чтоб форма отправилась нужно после ввода пина ещё сменить фокус . Как сделать отправку сразу после ввода последнего символа ?
  • Вопрос задан
  • 32 просмотра
Пригласить эксперта
Ответы на вопрос 1
fomenkogregory
@fomenkogregory
Юниор софтварный инженер
проверяй наличие символов в инпутах и отправляй. Типо inputs.every(input => input.value) && form.submit()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы