我正在构建一个包含三个文本区域的密码框。 每个文本区域都有一个字符。 输入密码的第一个字符后,我必须按Tab键或使用鼠标进入第二个文本区域键入密码的第二个字符。 我想在输入第一个文本区域后立即自动(光标移动)发生这种情况。
我怎样才能做到这一点?
如果您可能会问,我在C#中使用Visual Studio .NET 2008 我是.net中的一个完美的新手,我不知道怎么用适当的话来问这个问题。
谢谢。
答案 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();