![]() |
| | LinkBack | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Jan Malte Registriert seit: 08.01.2006 Ort: Mannheim & Berlin
Beiträge: 524
|
Hallo zusammen, ich habe ein Eingabefeld in dass ein Code eingegeben werden soll. Beim Laden der Seite wird der Fokus automatisch auf dieses Eingabefeld gesetzt. Ich möchte jetzt den Fokus auf dieses Eingabefeld fixieren, also beim Verlust des Fokus diesen sofort wieder setzten. Wie kann ich das realisieren? |
| | |
| | Nach oben #2 |
| Zigeunerschnitzel Registriert seit: 17.04.2008 Ort: Berlin
Beiträge: 54
|
HeyHo also eigentlich ist die JS Funktion focus(); dafür verantwortlich. Aber irgendwie funktioniert die bei onBlur nicht... naja vielleicht wenigsstens ein Ansatz für dich. HTML-Code: <htmL> <body onload="form.text.focus()"> <form name="form" id="form"> <input type="text" name="text3" id="text3"> <br /> <input type="text" name="text" id="text" onblur="this.focus();"> <br /> <input type="text" name="text2" id="text2"> </form> </body> </htmL> |
| | |
| | Nach oben #4 |
| Johannes Müller Registriert seit: 15.09.2005 Ort: Königreich Flieden
Beiträge: 695
|
wie wäre es mit nem Interval, das ständig den Fokus setzt. Oder du startest von onBlur aus nen Timer, der den Fokus zeitlich etwas versetzt aktiviert. Der onBlur Event-Handler wird vor dem eigentlichen defokus aufgerufen, das heißt du setzt mit deinem Code erneut den Fokus (den das Element ja eh hat) und danach wird er erst entzogen.
__________________ Weißt Bescheid - Scheiß wie weit |
| | |
| | Nach oben #5 |
| Jan Malte Registriert seit: 08.01.2006 Ort: Mannheim & Berlin
Beiträge: 524
|
Wenn ständig der Fokus gesetzt werden würde, würde bei langsamer Eingabe jedesmal der Fokus auf das schon geschriebene gesetzt. Und wie starte ich so einen Timer? Hab von JS leider keine Ahnung. Müsste ja wahrscheinlich nicht mal 1s lang versetzt sein, sondern vielleicht nur 0.5s. |
| | |
| | Nach oben #7 |
| Jan Malte Registriert seit: 08.01.2006 Ort: Mannheim & Berlin
Beiträge: 524
|
Ok, so setzte ich das sowieso schon, weil beim direkten onload das Formular ggf noch garnicht aufgebaut ist. Wenn ich jetzt aber den Fokus verliere im Feld, wird er ja nicht erneut gesetzt. Aber genau das will ich ja erreichen. Das Feld darf den Fokus sozusagen nie verlieren bis zum Abesenden des Formulars. |
| | |
| | Nach oben #8 |
| Bastian Fenske Registriert seit: 04.01.2006 Ort: Kassel
Beiträge: 964
|
Wozu soll das gut sein? Nicht nur, dass ich neugierig wäre – vielleicht lässt sich das dahinter liegende Problem aber auch anders lösen. Bastian
__________________ www.bastian-fenske.de |
| | |
| | Nach oben #9 |
| Jan Malte Registriert seit: 08.01.2006 Ort: Mannheim & Berlin
Beiträge: 524
|
Bei einer Anwendung soll der Benutzer auf der Seite einen Code eingeben. Dies geschiet mittels eines USB Barcodescanners. Damit die Eingaben auch in dem Textfeld landen, muss dieses natürlich den Fokus halten. Aber es kann vorkommen, dass der benutzer aus Versehen, oder aus reiner Langeweile, mit der Maus irgendwo auf die Seite klickt. Schon ist der Fokus verloren und die Eingaben landen nicht im Textfeld sondern wandern ins Nirvana. Eine Möglichkeit wäre natürlich das über ein Dialogfenster zu machen, allerdings gefällt mir das nicht wirklich. |
| | |
| | Nach oben #11 |
| Erfahrener Benutzer Registriert seit: 31.12.2006 Ort: Zürich
Beiträge: 398
| HTML-Code: <script type="text/javascript"> function setFocus() { window.setTimeout("form.text.focus()", 0); } </script> <!-- ... --> <form name="form" id="form"> <input type="text" name="text" id="text" onblur="setFocus()"> </form> <!-- ... -->
__________________ . <-- This is Punkt. Copy Punkt into your signature to help him on his way to world domination. |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Applet Focus zuweisen | The_S | Desktop-Applikationen und Grafik | 3 | 22.11.2005 19:45 |