Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery更改焦点输入_Javascript_Jquery_Html_Css_Keyup - Fatal编程技术网

Javascript Jquery更改焦点输入

Javascript Jquery更改焦点输入,javascript,jquery,html,css,keyup,Javascript,Jquery,Html,Css,Keyup,我试图建立一个系统,当我填充一个文本框时,它会移动到下一个文本框。 目前我有以下代码: $('#txt1').keyup(function() { if(this.value.length == $(this).attr('maxlength')) { $('#txt2').focus(); } }); 我想让这一切继续下去,这样它将继续echo#txt3#txt4等。 还有一种方法可以通过箭头键更改聚焦文本框。例如,当按下向上箭头键时,选择键从#txt4更改

我试图建立一个系统,当我填充一个文本框时,它会移动到下一个文本框。 目前我有以下代码:

 $('#txt1').keyup(function() {
    if(this.value.length == $(this).attr('maxlength')) {
       $('#txt2').focus();
    }
 });
我想让这一切继续下去,这样它将继续echo
#txt3
#txt4
等。 还有一种方法可以通过箭头键更改聚焦文本框。例如,当按下向上箭头键时,选择键从
#txt4
更改为
#txt3
,向下键则相反


提前感谢。

您可以使用按键事件来检查按键是否按下,并根据按键情况采取必要的措施! 编辑:通过在函数调用中传递参数,可以知道按下了哪个键

.keypress(function(e))
{
    if(e.which == 13)
       //take necessary action for enter key
    etc
}

您可以有一个按键事件,检查按键是否按下,并根据按键情况采取必要的措施! 编辑:通过在函数调用中传递参数,可以知道按下了哪个键

.keypress(function(e))
{
    if(e.which == 13)
       //take necessary action for enter key
    etc
}

绑定一个
keydown
事件并检查正确的
事件。哪个

  • 左:37
  • 上升:38
  • 右:39
  • 下降:40

绑定一个
键控事件,并检查正确的
事件。哪个

  • 左:37
  • 上升:38
  • 右:39
  • 下降:40

    • 以下是解决第一个问题的代码。为了方便起见,我添加了一个class属性,并将“maxlength”属性替换为HTML“size”属性

      HTML

      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>      
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>     
      
      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>
      
      }))

      我对你方关于箭头键装订的要求表示怀疑。如果用户希望在其中一个输入中导航,会发生什么?然而,以下是需要考虑箭头键的代码:

      HTML

      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>      
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>     
      
      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>
      
      }))


      以下是解决第一个问题的代码。为了方便起见,我添加了一个class属性,并将“maxlength”属性替换为HTML“size”属性

      HTML

      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>      
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>     
      
      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>
      
      }))

      我对你方关于箭头键装订的要求表示怀疑。如果用户希望在其中一个输入中导航,会发生什么?然而,以下是需要考虑箭头键的代码:

      HTML

      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>      
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>     
      
      <p><input type="text" class="navigable" id="txt1" data-number="1" size="2" placeholder="dd"></p>
      <p><input type="text" class="navigable" id="txt2" data-number="2" size="2" placeholder="mm"></p>
      <p><input type="text" class="navigable" id="txt3" data-number="3" size="4" placeholder="yyyy"></p>
      
      }))


      谢谢,我应该试试。谢谢,我应该试试。这对用户不友好。所以当您达到允许的最大字符数时,请继续,不要给用户任何删除字符或编辑输入的机会,只需继续下一个?我同意@undefined,这是你看不到这种东西的原因。。。在任何地方在我看来,这对用户不友好。因此,当您达到允许的最大字符数时,请继续,不要给用户任何删除字符或编辑输入的机会,只需继续下一个?我同意@undefined,这是你看不到这种东西的原因。。。在任何地方谢谢,这就是我要找的。问题是,我希望名称是来自一个非有序ID的DB的ID。是否有一种方法可以让下一个项目从类似“data-next”的内容中确定?是的,当然可以。但是为了帮助你找到最好的解决方案,我需要更多的信息。输入是同一div的一部分吗?这可以让我们使用jQuery:eq而不是依赖data-*属性。问题是,我希望名称是来自一个非有序ID的DB的ID。是否有一种方法可以让下一个项目从类似“data-next”的内容中确定?是的,当然可以。但是为了帮助你找到最好的解决方案,我需要更多的信息。输入是同一div的一部分吗?这使我们能够使用jQuery:eq而不是依赖data-*属性。