利用Js自动切换焦点实现手机号码分段的输入

以美国的电话号码为例,假设分为三段:区号、局号、和另外四位数字。,主要的实现思路为:

  1. 在一个文本框智能的字符达到最大的数量之后,自动将焦点切换到下一个文本框。换句话说,用户在第一个文本框中输入了3个数字之后,然后焦点就会切换到第二个文本框,在输入3个数字,焦点又会切换到第二个文本框。
<script>
  var oTxt1=document.getElementById("txt1");
  var oTxt2=document.getElementById("txt2");
  var oTxt3=document.getElementById("txt3");
  function tabForward()
  {
    var ev=ev||window.event;
    var target=ev.target;/*每一个txtx输入完整之后,都是一次完整的keyup事件*/
    var keyCode=ev.keyCode;
    
    if (target.value.length===target.maxLength)/*如果两个值相等,则需要查找表单字段的集合,直至找到下一个文本框*/
    {
      var form=target.form;
      for(var i=0,len=form.elements.length;i<len;i++)
      {
        if (form.elements[i]===target)
        {
          if (form.elements[i+1])
          {
            form.elements[i+1].focus();/*找到下一个文本框,将焦点切换到该文本框*/
          }
        }

      }
    }
  }
  oTxt1.onkeyup=tabForward;
  oTxt2.onkeyup=tabForward;
 /* oTxt3.onkeyup=tabForward;*/
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值