Как сосредоточиться на кнопке после текста, оцифрованного в поле ввода?

#javascript #html

Вопрос:

Я уже искал здесь и нашел некоторые решения focus() ,я пытался адаптировать эту функцию к своему коду, но безуспешно, просто хочу focus() нажать кнопку после текста, оцифрованного в теге ввода с максимальной длиной 6, затем автоматически нажать enter, чтобы отправить данные

 $("#PopID-Lido").keyup(function () {
    debugger
        if (this.value.length == this.maxLength) {
          $(this).next('#senData').focus();
        }
  });
 

Я не пытаюсь автоматически нажимать enter, потому что я застрял с этим…
HTML:

 <div class="container-fluid">
    <div class="container-popid" for="PopID-Lido">POPID ATUAL <!--<span id="actPopid"> </span> -->

        <form>
            <input type="text" id='PopID-Lido' class='PopID-atual PopID-Lido' maxlength="6">

        </form>
    </div>
    <br>
    <div class="container-NextPopID" for='Next-PopID'>PRÓXIMO POPID 
         <output type="text" id="NextPopID" class='Next-PopID NextPopID'>  
    </div>

</div>

<br><input type="button" id="senData" value="Send to PLC">
 

Комментарии:

1. Если ваша цель-нажать кнопку, чтобы отправить форму, почему бы не отправить форму вместо нажатия кнопки ? Если вы не хотите отправлять форму, зачем вам форма ?

2. Я должен использовать кнопку, потому что данные во входном теге отправляются в ПЛК, и для этой функции нужна функция, например, нажмите, чтобы отправить, это не может быть записано внутри ПЛК, без этого

Ответ №1:

Селектор Dom здесь неверен. попробуйте вот так или используйте правильный селектор.

 $("#PopID-Lido").keyup(function () {
    if (this.value.length == this.maxLength) {
      $('#senData').focus();
    }
});