christian: Eintrag in textarea ergänzen

Hallo,
ich hab ein Formularfeld:

<textarea name="text">Hier ist bereits ein Text vorhanden</textarea>

Den EIntrag in diesem Textfeld will ich bei Klick auf einen Link ergänzen, und zwar genau dort, wo sich der cursor gerade befindet.

Dazu gibt es diese Funktion:

<script language="JavaScript">
 function go() {
     document.formular.text.value = "test";
 }
 </script>

Bisher funktioniert fast alles. Wenn ich jedoch die Funktion aufrufe geht der bereits vorhandene Text verloren und wird durch "Test" ersetzt. Gibt es mit JavaScript eine Lösung für das Problem?

Vielen Dank

christian

  1. Hallo christian,

    Zeichenketten werden (auch) mit einem Pluszeichen verbunden.

    Entweder so
    document.formular.text.value += "test";

    oder so

    document.formular.text.value = document.formular.text.value + "test";

    Mit freundlichem Gruß
    Micha

    --
    LeagueEditor JavaScript kostenlose Ligaverwaltung || richtig Messen will gelernt sein
    1. Entweder so
      document.formular.text.value += "test";

      oder so

      document.formular.text.value = document.formular.text.value + "test";

      Wie kann ich "test" genau dahin setzen, wo der cursor sich gerade befindet? Bei deiner Version setzt er "test" immer ans Ende.

      1. Hallo christian,

        Wie kann ich "test" genau dahin setzen, wo der cursor sich gerade befindet?

        Schau Dir das genau an:
        http://aktuell.de.selfhtml.org/artikel/javascript/bbcode/

        Mit freundlichem Gruß
        Micha

        --
        LeagueEditor JavaScript kostenlose Ligaverwaltung || richtig Messen will gelernt sein
  2. schönen Gruß auch,

    Wenn ich jedoch die Funktion aufrufe geht der bereits vorhandene Text verloren und wird durch "Test" ersetzt. Gibt es mit JavaScript eine Lösung für das Problem?

    mit folgendem Script würde der String immer ans Ende des Eingabefeldes angehängt.

    <script language="JavaScript">
     function go() {
         document.formular.text.value = document.formular.text.value+" test";
     }
     </script>

    Wie man aber mitten rein zum Cursor was einfügen kann, weiß ich auch nicht.