Ins nächste Feld Springen

crashx

Erfahrenes Mitglied
Ich habe 4 <input> Felder welche mit MAXLENGTH=4 nur 4 zeichen zulassen.

Wie kann ich den Cursor automatisch nach 4 geschriebenen Zeichen in das nächste Feld zwingen, so das ich im Prinzip 16 Zeichen Schreibe und nie die TAB Taste oder die Maus brauche?

Ich denke, das wenn, die nur mit Javascript möglich sein wird?!

PHP:
      <?php
      echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
        echo '<input type="text" name="key1" class="insrt_key" maxlength="4"> - ';
        echo '<input type="text" name="key2" class="insrt_key" maxlength="4"> - ';
        echo '<input type="text" name="key3" class="insrt_key" maxlength="4"> - ';
        echo '<input type="text" name="key4" class="insrt_key" maxlength="4"> ';
        echo '<input type="submit" name="send" value="Speichern" class="insrt_submit">';
      echo '</form>';
      ?>
 
Hi,
hab dir ein grobes Beispiel zusammengestellt:
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Unbenanntes Dokument</title>
<script>
function change_focus(obj)
{
	if(obj.id < 4)
	{
		if(obj.value.length >= 4)
		{
			obj.blur();
			document.getElementById((obj.id*1+1)+"").focus();
		}
	}
	else
	{
		if(obj.value.length >= 4)
		{
			alert("ende");
		}
	}
}
</script>
</head>
<body>
<input id="1" onkeyup="change_focus(this)" type="text" name="key1" class="insrt_key" maxlength="4">
<input id="2" onkeyup="change_focus(this)" type="text" name="key2" class="insrt_key" maxlength="4">
<input id="3" onkeyup="change_focus(this)" type="text" name="key3" class="insrt_key" maxlength="4">
<input id="4" onkeyup="change_focus(this)" type="text" name="key4" class="insrt_key" maxlength="4">
</body>
</html>
hoffe es hilft
 

Neue Beiträge

Zurück