Fokus auf verstecktes Eingabefeld?

L

leo-magic

Aktives Mitglied
Thread Starter
Dabei seit
24.12.2004
Beiträge
1.178
Reaktionspunkte
4
Hallo!

Auf einer Seite soll der Cursor automatisch in ein verstecktes Formularfeld gehen.

Das habe ich so realisiert:
Code:
<body OnLoad="document.enterid.user_id.focus();">

Versteckt wird das Feld mit
Code:
<div style="opacity: 0;"></div>

Bei "visibility: hidden;" oder "display: none;" funktioniert der focus() Code nicht.

Nun, alles gut und recht, nur... Wenn ein Besucher irgendwo auf die leere Seite klickt, springt natürlich der Cursor aus dem (unsichtbaren) Formularfeld raus!

Wie kann ich das verhindern? Oder: Kann ich bei jedem User-Klick den focus() auf das Formularfeld wieder setzen?

Danke!!

Léo
 
Die gleiche Funktion für den „onBlur“-Event-Handler des versteckten Feldes definieren. Dann kann der Fokus nicht aus dem Feld gehen. Außer wenn JS deaktiviert wird :p .
 
Habs gerade probiert... schweint nicht zu funktionieren. Sollte es theoretisch so klappen?

Code:
<input type="password" name="user_id" onblur="document.enterid.user_id.focus();">
?

Danke!
Léo
 
Öhhmmm – welchen Sinn hat ein Formular, bei dem der Focus in einem einzigen Feld bleibt?
Der Rest des Formulars darf nicht ausgefüllt werden? – Aber wofür dann überhaupt ein Formular?
Was hat der Cursor in einem versteckten Feld verloren?

Erzähl doch lieber mal, was Du mit diesem Kram überhaupt erreichen willst; also warum Du das machen willst. Was auch immer Du vorhast – ich bin zuversichtlich, dass es einen anderen Weg gibt, das zu verwirklichen.
 
Also: Man soll sich über einen rfid-Chip an einem RFID-Reader (der agiert wie ein Keyboard) einloggen können. Das heisst:

1) Man hält der Chip an den Leser -> Der Hintergrund der Loginseite färbt sich rot bei "kein Zutritt" und grün bei "Zutritt".

Wie könnte man das sonst lösen? (html, php, js, ajax)

Danke!
Léo
 
Ich verstehe trotz Deiner Beschreibung nicht, was das versteckte Inputfeld macht.

Also, Du hälst den RFID Chip an den Leser.
Was passiert dann, bzw. was hat das Inputfeld mit der Hintergrundfarbe zu tun bzw. warum muß das immer den Fokus haben ?
 
der Reader funktioniert wie eine Tastatur, gibt also den zehnstelligen Code om Chip ins Feld ein und sendet somit ein Formular. (Dann wwerden die Daten überprüft, jenachdem ob ok oder nicht die Hintergrundfarbe dargestellt)

Klar?

Léo
 
Jetzt ja.
Das ganze setzt ja wahrscheinlich grundsätzlich aktiviertes Javascript im Browser voraus.

Wenn der Leser sich wie eine Tastatur verhält, könntest Du einfach die Eingabe, die vom Leser kommt per Javascipt abfragen und das dann per Ajax an die Seite senden, die dann entscheidet, ob der Benutzer berechtigt ist, oder nicht.

Je nachdem, was aus dem Ajax-Request zurückkommt, kannst Du dann noch die Hintergrundfarbe rot, oder grün setzen.
 
Kann man das? Habe leider keine Ahnung wie man das machen würde. Html und PHP komme ich einigermassen zurecht damit, JS und Ajax habe ich keinen Plan...
 
Ich zieh das Thema wieder rauf... Ganz simpel mit Javascript:
Wie kann ich den Fokus automatisch wieder ins Textfeld holen, wenn der Mauszeiger das Textfeld verlässt?

Danke!
Léo
 
Zurück
Oben Unten