Sven Rautenberg: Cursor soll von Textfeld zu Textfeld springen

Beitrag lesen

<html>
<head>
<title></title>
  <script type="text/javascript" language="JavaScript">
  function pruefen(i)  {
     if (document.Formular.zahl+i.value == 2)  {

Wenn in das Feld eine "2" geschrieben wurde? Sicher nicht, sondern wenn 2 Zeichen reingeschrieben wurden. Also
if (document.Formular.zahl+1.value.length == 2)

document.Formular.zahl+[i+1].focus();

Und was ist beim letzten Feld? Da gibts dann hier einen Fehler, weil es kein Feld 7 gibt. Böse...

}
   }
  </script>
</head>
<body>
<h1 align="center">SPEICHERN DER SPIELZAHLEN</h1>
<div align="center">
  <form name="Formular">
  <font size=+2>SPIEL 1 :</font>
  ZAHL 1 <input name="zahl1" type="text" size="2" maxlength="2" onKeyDown="pruefen(1)"><nobr>
  ZAHL 2 <input name="zahl2" type="text" size="2" maxlength="2" onKeyDown="pruefen(2)"><nobr>
  ZAHL 3 <input name="zahl3" type="text" size="2" maxlength="2" onKeyDown="pruefen(3)"><nobr>
  ZAHL 4 <input name="zahl4" type="text" size="2" maxlength="2" onKeyDown="pruefen(4)"><nobr>
  ZAHL 5 <input name="zahl5" type="text" size="2" maxlength="2" onKeyDown="pruefen(5)"><nobr>
  ZAHL 6 <input name="zahl6" type="text" size="2" maxlength="2" onKeyDown="pruefen(6)"><nobr>

Etwas zu viele <nobr> hier. Das ist ein Tag genau wie <font>, der umschlossene Bereich wird nicht umgebrochen. Fehlt also </nobr>. Abgesehen davon ist das Tag kein HTML-Standard, das macht man heutzutage mit CSS.

</form>
</div>
</body>
</html>

Ob das jetzt der Schlüssel zum Erfolg ist, vermag ich nicht zu sagen. Insbesondere kann es durchaus sein, daß onKeyDown in einigen Browsern Probleme macht und einfach nicht funktioniert.

- Sven Rautenberg