Andreas: Nach onFocus ans ende eines Textfeldes springen

Hallöchen!
Und zwar habe ich mit einem einfachen Javascript folgendes gemacht:
Ich habe einen value in einem Textfeld, und zwar "ID24", soll ein Beispiel sein. Und wenn jetzt jemand auf diese Textfeld klickt, soll "24" verschwinden, so dass man direkt eine andere Zahl eingeben kann.  Klappt soweit ganz gut, nur leider springt der Curser am Ende immer an den Anfang des Textfeldes. Gibt es eine Möglichkeit, das der Cursor am Ende stehen bleibt?

Anzuschauen unter:
http://www.meinhausonline.de/uebersicht.php

Das Javascript sieht wie folgt aus:

<input type="text" name="ID" class="xy" size="12" value="ID24" onfocus="javascript:if (document.form.ID.value == 'ID24') document.form.ID.value = 'ID';">

Jemand ne Idee?
Viele Grüße
Andreas

  1. Tach!

    ...sagt doch wenigstens "es geht nicht" :-)

    Oder wie siehts aus?
    Grüße
    Andreas

    1. Tach!

      ...sagt doch wenigstens "es geht nicht" :-)

      Oder wie siehts aus?
      Grüße
      Andreas

      1. Hallo!
        Hab vielleicht ne Idee:
        Man kann wenigstens bei Textareas text am Ende anfügen, oder? Könnte man den Befehl nicht vielleicht mit "" machen? Nur wie geht das? Ist irgendwie ärgerlich, wäre so schön ;-)
        Grüße
        Andreas

        1. Moin!

          Hab vielleicht ne Idee:
          Man kann wenigstens bei Textareas text am Ende anfügen, oder? Könnte man den Befehl nicht vielleicht mit "" machen? Nur wie geht das? Ist irgendwie ärgerlich, wäre so schön ;-)

          Du hast mit Javascript auf die Cursorposition keinerlei Einfluß.

          Ebenso hast du (außer im IE, was für Internetanwendungen aber nicht viel hilft) auch keinerlei Einfluß auf selektierten Text etc.

          Text anhängen oder davorsetzen (jeweils bezogen auf den gesamten schon vorhandenen Text) geht aber.

          Grobe Richtung:
          textarea.value = "vorderer Text" + textarea.value + "hinterer Text";
          (Textarea ist natürlich document.forms.... das will ich hier nicht auswalzen.)

          Konkret zu deinem Problem: Warum steht "ID" als fester Text im Eingabefeld drin? Kann man da auch "XY" reinschreiben? Würde das was anderes bewirken? Wenn nein, dann laß die Textangabe "ID" einfach raus aus dem Feld, gib dem Feld durch umstehende Beschriftung die Bedeutung "ID" und bastel, sollte es nötig sein, den String "ID" auf dem Server vor die Zahleneingabe. Alles andere ist nicht sonderlich ergonomisch. Ein Textfeld steht dem User nämlich immer komplett zur Eingabe zur Verfügung, und es werden durchaus auch Taktiken wie "Doppelklick" zum Markieren des gesamten Textes angewandt, gefolgt von der Benutzung der numerischen Tastatur, um schnell eine Zahl reinzuhacken. Wenn der Benutzer gezwungen wäre, immer noch "ID" in Großschrift davorzuhängen, wird er ab einem gewissen Nervstadium kotzen.

          Du siehst: Wenn das Problem keine Lösung findet, ändere das Problem. ;)

          Gegen die Variante, die Vorbelegung des Feldes onfocus zu entfernen, ist einzuwenden, daß man ja nach erfolgter Eingabe durchaus nochmal zum Feld zurückkehren kann - wenn dann die Eingabe futsch ist, bringt dir das den Zorn der Benutzer ein. Besser ist, die Voreinstellung zu selektieren - dann kann man gleich losschreiben, wenn man im Feld drin ist.

          - Sven Rautenberg