dbories: Zeilenumbruch in Textarea

Hallo Leute,

wenn ich in eine Textarea einen Text eingeben und "enter" drücke, springt der Cursor in die nächste Zeile, wie kann ich diesen Zeilenumbruch aber jetzt bei der späteren Ausgabe des Inhalts berücksichtigen???

Danke für eure Antworten,

Ciao dbories

  1. Hallo Leute,

    wenn ich in eine Textarea einen Text eingeben und "enter" drücke, springt der Cursor in die nächste Zeile, wie kann ich diesen Zeilenumbruch aber jetzt bei der späteren Ausgabe des Inhalts berücksichtigen???

    Ich nehme an, daß die Ausgabe über document.all.textarea.value erfolgt. Die Newsline-Steuerzeichen werden mit in diesem String gespeichert. Wenn man diesen Text-String in eine Textarea schreibt, dann werden diese Steuerzeichen auch kopiert! Der Text erscheint also genau so, wie er auch vorher war - nur beim speichern muß man aufpassen, wenn man Zeilengesteuert arbeitet!

    GVT

    1. wenn man Zeilengesteuert arbeitet

      DOS/Win verwendet Umbruch-Zeichen 13 und 10 hintereinander. Andere Betriebssysteme (z. B. Linux/Mac) evtl. noch andere Zeichen (siehe RegExp).

      Mit String.replace() kann man diese dann z. B. durch <BR> ersetzen (im Falle von DOS/Win beide Zeichen zusammenhängend).

      Beispiel-Quelltext:
      <form action=javascript:f1()>
      <textarea name=t1>
      </textarea>
      <input type=submit>
      </form>
      <script type=text/javascript>
      function f1(){
        var string = document.forms[0].t1.value+" \f\n\r\v"
        for (var i=0; i<string.length; i++)
          document.writeln(string.charCodeAt(i) + "<BR>")
      }
      </script>

      Ausgabe (Erläuterung in Klammern):
      32 (Leerzeichen in Textarea-Vorbelegung)
      13 (Wagenrücklauf \r aus Textarea-Vorbelegung)
      10 (Zeilenvorschub \n aus Textarea-Vorbelegung)
      32 (Leerzeichen aus string)
      12 (\f aus string)
      10 (\n aus string)
      13 (\r aus string)
      118 (\v aus string)

      Für die zeilenweise Verarbeitung würde ich ggf. alle
      "\r\n", "\n\r", "\r", "\n", "\f" und "\v" abfragen oder ersetzen (durch "<BR>" oder "\n").