Habe ein Formular mit 10 Feldern: Feld0 bis Feld9. Vor dem Absenden soll überprüft werden, ob Feld9 > 0. Soweit kein Problem. Aber nun: der Cursor soll mit jedem mißglückten Absendeversuch weiterspringen, von Feld0 bis Feld9 und dann wieder zu Feld0 etc. unabhängig davon, welche Eingaben in den jeweiligen Feldern stehen und erhalten bleiben. Die Entertaste soll sich also wie die Tab-Taste verhalten, solange in Feld9 kein Eintrag gemacht wurde. Tausend Dank im voraus.
[JavaScript] Enter als Tab-Taste
Einklappen
X
-
Projekthilfe?
Verstehe ich nicht so ganz. Ist doch eine ganz normale javascript-Frage. Ich möchte document.Formular.Feld[x].focus() in einer Schleife laufen lassen. Weiß aber leider nicht, wie man den aktuellen Cursor-Stand ausliest und übergibt. Könnte mir durchaus vorstellen, daß eine Lösung des Problems allgemeininteressierend ist, wer greift schon gern immer zur Tab-Taste vor allem bei rein-numerischen Formularen.
Kommentar
-
Re: Projekthilfe?
Original geschrieben von bibliopola
Verstehe ich nicht so ganz.
wer keinerlei eigenen ansatz vorzeigt, also vermutlich nur was fertiges bekommen möchte, der wird entweder zu den scriptgesuchen oder zur projekthilfe verschoben.
Weiß aber leider nicht, wie man den aktuellen Cursor-Stand ausliest und übergibt.
aber du kannst dir ja beim "betreten" eines feldes merken, dass eben das gerade passiert ist - eventhandler onFocus.
Könnte mir durchaus vorstellen, daß eine Lösung des Problems allgemeininteressierend ist, wer greift schon gern immer zur Tab-Taste vor allem bei rein-numerischen Formularen.
genau das machst du aber, wenn tasten plötzlich nicht mehr das bewirken, was auf allen anderen seiten standard ist.I don't believe in rebirth. Actually, I never did in my whole lives.
Kommentar
-
onFocus
Wenn ich in nachstehendem script in Zeile 8 document.Formular.Feld2.focus() durch document.Formular.focus1.focus() austausche, funktioniert es nicht mehr. Bin recht unerfahren in javascript (und benutze es auch aus guten Gründen kaum), brauche aber diese kleine Eingabehilfe dringend im Rahmen eines PHP-Projekts.
<html>
<head>
<title>Formular</title>
<script type="text/javascript">
function chkFormular () {
if (document.Formular.Feld4.value == "") {
alert("Formular wird nicht abgeschickt!");
document.Formular.Feld2.focus();
return false;
}
}
</script>
</head>
<body>
<h1>Formular</h1>
<form name="Formular" action=""
method="post" onSubmit="return chkFormular()">
<pre>
Feld1: <input type="text" size="40" name="Feld1" onFocus="var focus1='Feld2'">
Feld2: <input type="text" size="40" name="Feld2" onFocus="var focus1='Feld3'">
Feld3: <input type="text" size="40" name="Feld3" onFocus="var focus1='Feld4'">
Kontrollfeld: <input type="text" size="40" name="Feld4" onFocus="var focus1='Feld1'">
Formular: <input type="submit" value="Absenden"><input type="reset" value="Abbrechen">
</pre>
</form>
</body>
</html>
Kommentar
-
Wie auch, es gibt kein Feld focus1. Und was bezweckst du mit onFocus="..."?
EDIT:
Ah jetzt wirds mir klar: Du schreibst den Namen des nächsten Feldes in die Variable focus1 und ...
Warum so umständlich,
onKeyDown="if(event.keyCode==13) event.keyCode=9;"
macht aus Enter Tab.Zuletzt geändert von onemorenerd; 05.07.2005, 18:36.
Kommentar
Kommentar