当第一个文本框的值为maxLength = 3时,如何在第二个文本框上跳转焦点

时间:2013-03-13 06:10:29

标签: javascript textbox focus maxlength onkeypress

我在联机申请表上的电话号码字段旁边有两个文本框。

第一个文本框的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);" />

非常感谢任何帮助

Camerone

2 个答案:

答案 0 :(得分:1)

你刚拼错了长度。这很好。

<input onkeyup='if (this.value.length >= 3) { document.getElementById("TelNumber2").focus(); }' />
编辑:我有所纠正。看起来当代码在属性中时,您不需要使用thisvalue已经在范围内了。

答案 1 :(得分:0)

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

尝试以下方法。不要使用return语句。

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

干杯! :)