JQuery 自动提交

JQuery autosubmit

我有一个包含三个输入元素的表单。当最后一个输入元素不等于 null 时,我想 运行 我的验证函数。请有任何想法。这是代码:

$(document).ready(function () {

 $("#number input").keyup(function () {
    if (this.value.length == this.maxLength) {
      $(this).next('#number input').focus();     
    }
 });

})

这是 HTML :

 <div id="number">
      <form action="" id="myform">
        <input placeholder="hr" maxlength="2" type="number" id="uHrs" pattern="[1-12]" autofocus></input>
        <input placeholder="min" maxlength="2" type="number" id="uMins" pattern="[0-59]"></input>
        <input placeholder="sec" maxlength="2" type="number" id="uSecs" pattern="[0=50]"></input>
        <button type="submit" id="subtime" value="submit" onclick="checkInput()">Submit</button>
      </form>

你可以试试过滤,我也用了输入事件所以我们可以粘贴。如果我们想要支持粘贴完整的值集,我们甚至可以拆分太长的数字并将其传播到下一个字段

完整解决方案:https://jsfiddle.net/mplungjan/3mbqw80h/

$(function() {
  const $inputs = $("#number input"),
    $form = $("#number");
  $inputs.on("input", function() {
    if (this.value.length == this.maxLength) {
      const $next = $(this).next('#number input');
      if ($next.length) $next.select().focus();
      if ($inputs.filter(function() {
          return this.value.trim() !== ""
        }).length === $inputs.length) {
        checkInput();
      }
    }
  });
})