【问题标题】:How to jump focus on the second textbox when value of first textbox is maxLenght=3当第一个文本框的值为 maxLength = 3 时如何将焦点转移到第二个文本框
【发布时间】:2013-02-28 23:16:11
【问题描述】:

在线申请表上的电话号码字段有 2 个并排的文本框。

第一个文本框的 maxLenght = 3,所以在用户输入值后,它必须关注第二个文本框。

我将此函数添加到我的输入类型文本框,但它只允许一个值,然后它已经专注于第二个文本框。

onkeypress="if(value.lenght==3)return false;
            document.getElementById('TelNumber2').focus();"

我也尝试过这个功能,但发生了同样的情况

onkeypress="if(event.keyCode==3)return false;
            document.getElementById('TelNumber2').focus();"

这些是我的文本框:

第一个文本框:

input type="textbox" id="TelNumber1" name="TelNumber1" value="" maxLenght="3" 
style="width:40px; border: 1px solid #b5b6b5" size="3" 
onKeyDown="limitText(this,3);" onKeyUp="MaxText(this,3);" />

第二个文本框:

input type="textbox" id="TelNumber2" name="TelNumber2" value="" maxLenght="7"
style="width:115px; border: 1px solid #b5b6b5" size="7" 
onKeyDown="MaxText(this,7);" onKeyUp="MaxText(this,7);" />

将不胜感激任何帮助

卡梅隆

【问题讨论】:

  • 您的长度拼写错误。

标签: javascript textbox focus maxlength onkeypress


【解决方案1】:

你只是拼错了长度。这很好用。

<input onkeyup='if (this.value.length >= 3) { document.getElementById("TelNumber2").focus(); }' />

编辑:我的立场是正确的。看起来当代码在这样的属性中时,您不需要使用thisvalue 已在范围内。

【讨论】:

    【解决方案2】:

    您在设置焦点之前返回。因此,您设置焦点的代码,即 document.getElementById('TelNumber2').focus(); 根本没有被调用。

    试试下面的。不要使用 return 语句。

    onkeypress="if(value.length==3) document.getElementById('TelNumber2').focus();"
    

    干杯! :)

    【讨论】:

    • 感谢您的回复,我删除了return语句,但现在它甚至不再将焦点跳转到下一个文本框。它只是停留在第一个文本框中函数现在看起来像这样; onkeypress="if(value.lenght==3) document.getElementById('TelNumber2').focus();"这个也用过 onkeypress="if(event.keyCode==3) document.getElementById('TelNumber2').focus(); "
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 2015-08-10
    • 2016-08-11
    • 2010-11-15
    • 2014-12-13
    相关资源
    最近更新 更多