Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
js: Cursor in Textfeld setzen [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
js: Cursor in Textfeld setzen


 
Troublegum
23-03-2002, 01:08 
 
Hallo Leute,

da ich mich mit JS noch nie so richtig auseinander gesetzt habe, brauche ich nun eure Hilfe.

Meine Situation:

<body onLoad="document.query.Artist.focus();">
<form method="get" action="search.php" name="query">
Interpret: <input type="text" name="Artist" size="20" value="" tabindex="1"><br>
Titel: <input type="text" name="Titel" size="20" value="" tabindex="2"><br>
<input type="submit" value="Suche starten" tabindex="3">
</form>

Nun springt der Cursor automatisch ins Feld "Artist", sobald die Seite geladen ist, soviel hab ich schon gerafft.

Das Problem ist aber, dass ich auf der Seite noch andere Formulare habe. Wenn man jetzt gleich da was reintippt, bevor die Seite ganz fertig geladen ist, springt der Cursor mittendrin ins das o.a. Formular, was störend ist.

Ist es möglich, und wenn ja wie :D , dass der Cursor nur in das Feld "Artist" springt, wenn man vorher in kein anderes Formular geschrieben hat? Also wenn der Cursor schon woanders ist, dann nicht.
Wenn mir jemand den Code vorkauen könnte, wäre das echt great. Denn ich hab von js keine Ahnung.

Vielen Dank schonmal im vorraus.

MfG Troublegum

 
Flori
23-03-2002, 10:03 
 
Du willst also, dass die Seite aufgerufen wird und wenn dann nach einem Zeitraum von ca 5 s niemand etwas aktiviert hat, dass es automatisch dort rein springt.
Ist das net unlogisch?
Wenn er nirgends reinklickt, springt er dort hin. Aber was wenn er erst später klicken will.
Erklär dein Problem bitte noch etwas genauer, dann kann ich dir sicher helfen;)

 
Troublegum
23-03-2002, 17:42 
 
Hallo Flori,

du scheinst mich falsch verstanden zu haben. Das ist keineswegs etwas unlogisch.
Der Cursor springt automatisch ins Suchfeld.
Sollte man aber z.B. ein anderes Formular brauchen (Upload, Login) und gerade anfängt zu tippen, stört es, wenn plötzlich der Cursor wechselt.

Und ich hab auch nicht von einem Zeitraum von 5 sec. gesagt.
Normal springt der Cursor nach dem Laden direkt ins Suchfeld.
Nun will ich, dass vorher überprüft wird, ob der Cursor gerade schon in einem anderen Feld ist. Wenn ja, dann soll er eben nicht ins Suchfeld springen.

 
Flori
23-03-2002, 20:18 
 
Aber der Besucher kann doch nicht in dem Augenblick, in dem die Seite geladen ist schon in dem Formular sein:confused:

 
Troublegum
23-03-2002, 20:58 
 
Hallo Flori,

danke für deine Bemühungen.

Doch, probiers aus.
z.B. hier (http://www.lyricszone.de/upload1.php)
Einfach in ein Formular klicken und was reintippen, sobald das Formular erscheint. Das geht durchaus.

Du weißt doch, der Surfende hat keine Zeit :rolleyes:

 
wahsaga
25-03-2002, 11:02 
 
mein erster gedanke wäre gewesen, abzufragen ob der focus gerade auf einem anderen feld liegt - aber ich glaub so etwas geht mit js nicht wirklich...

ok, du könntest z.b. im onload-aufruf erst einmal alle anderen formular-felder überprüfen, ob diese noch leer sind - und nur wenn dies der fall ist, dann setzt du den focus auf dein suchfeld.


aber ist dies den ganzen aufwand überhaupt wert? ich würde lieber ganz darauf verzichten, nach dem laden den focus zu setzen - einen klick ins gewünschte feld schafft der durchschnittlich begabte user auch noch alleine...

 
Flori
25-03-2002, 12:25 
 
Wie hieß gleich noch mal das Wort, mit dem man alle Elemente eines Formulars ansprechen kann?
Wenn ihr mir das sagt, schreib ich das Script:D :D :D
Ich bin grad inner Schule (Info) und der Pauker quatscht und quatscht und mein schlaues Buch hab ich auch net dabei.:cool:

 
Troublegum
25-03-2002, 12:47 
 
Original geschrieben von Flori
Wie hieß gleich noch mal das Wort, mit dem man alle Elemente eines Formulars ansprechen kann?

Ich werde mich erkundigen. Danke..

Original geschrieben von Flori
Wenn ihr mir das sagt, schreib ich das Script:D :D :D
Ich bin grad inner Schule (Info) und der Pauker quatscht und quatscht und mein schlaues Buch hab ich auch net dabei.:cool: [/B]
Mal zwei Fragen:
- wie kannst du am PC sitzen, wenn dein Lehrer redet ?
- oder ist grade Pause ?

 
Flori
25-03-2002, 20:38 
 
Bei Informatik sitzt man gewöhnlich vor einem Computer;)

 
Flori
26-03-2002, 20:02 
 
Ich habs selbst rausgefunden
form.elements[]
Aber das hilft mir doch nicht:(
Naja
Let's hope there's another way
Bye:)

 
Titus
26-03-2002, 20:49 
 
1) Füge dem Formular ein verstecktes Feld hinzu:
<input type="hidden" name="focussed" value="0">
2) Füge jedem Formularelement den event-Handler onFocus="this.form.focussed='1';" hinzu
3) lies im body onLoad das versteckte Feld aus und setz den Fokus nur, wenn der Wert 0 ist:
onLoad="if(document.query.focussed.value=='0') document.query.Artist.focus();


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:58 Uhr.