如何在不使用制表符或鼠标的情况下将光标从第一个textarea移动到第二个textarea?

时间:2010-05-25 14:47:19

标签: .net javascript html passwords cursor

我正在构建一个包含三个文本区域的密码框。 每个文本区域都有一个字符。 输入密码的第一个字符后,我必须按Tab键或使用鼠标进入第二个文本区域键入密码的第二个字符。 我想在输入第一个文本区域后立即自动(光标移动)发生这种情况。

我怎样才能做到这一点?

如果您可能会问,我在C#中使用Visual Studio .NET 2008 我是.net中的一个完美的新手,我不知道怎么用适当的话来问这个问题。

谢谢。

3 个答案:

答案 0 :(得分:3)

试试onKeyPress。这应该照顾你正在寻找的东西。

<input type="text" name="password" onKeyPress="autoTab()" />

<script type="text/javascript" language="JavaScript">
   function autoTab() {
     //do stuff
   }
</script>

这是一个处理更改字段光标位置的教程。

http://www.webdeveloper.com/forum/showthread.php?t=91817

这表明你的autoTab()函数看起来应该是这样的。

function autoTab(field,nextFieldID){
  if(field.value.length >= field.maxLength){
    document.getElementById(nextFieldID).focus();
  }
}

答案 1 :(得分:1)

你在项目中使用jQuery吗?

<!DOCTYPE html>
<html>
<head>
<title>example</title>
<style type="text/css">
    *
    {
        margin: 0;
        padding: 0;
    }
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">

    $(function () {

        $('#data1').keyup(function () {

            if ($(this).val().length == 1) {

                $('#data2').focus();
            }

        });

    });

</script>
</head>
<body>
<input id="data1" type="text" value="" style="width: 10px" /><br />
<input id="data2" type="text" value="" style="width: 10px" />
</body>
</html>

答案 2 :(得分:0)

if textbox1.text.length > 0 then textbox2.focus();