Sönke Tesch: Zeilenumbruch - formulare?

Beitrag lesen

Ich möchte gerne auf meiner Homepage ein Formular bereitstellen, wo die Besucher ihr Kommentar schreiben können, dass dann per eMail versendet werden soll.

Ich möchte aber gerne, dass die Zeilenumbrüche, die von den Besuchern im Kommentarfeld gemacht wurden, auch in der eMail genauso aussehen, weil der kommentar sonst in einem gesendet wird, was ziemlich schwer zum Lesen ist.

Sorry, hab das vergessen! Möchte JavaScript verwenden!

Mit Javascript lassen sich keine Mails versenden. Der Versand von Formulardaten geht _nur_ per Server-seitiger Sprache (zum Beispiel PHP, Perl) oder per Browser (action="mailto:.."). Letzteres funktioniert nicht immer und ist deshalb weniger empfehlenswert.

Bei mehrzeiligen Textfeldern in Formularen ist weiterhin zu beachten, daß ein sichtbarer Zeilenumbruch auf dem Bildschirm nicht immer ein echter Zeilenumbruch in den Daten ist. Zeilenumbrüche werden nur da eingefügt, wo der Autor auch Return gedrückt hat.
Zum Beispiel wird bei diesem Formular hier die Zeile automatisch umbrochen, damit immer alles zu sehen ist und eine Zeile immer die ganze Formularbreite ausfüllt, egal wie schmal oder breit man die Anzeigefläche macht. Das führt aber nicht dazu, daß im Text ein Zeilenumbruch vorhanden ist.

Abhilfe bringt nur das Attribut wrap, auf das Frank schon hingewiesen hat, welches aber leider nicht im HTML-Standard ist.

Alternativ kannst Du per allerdings in der Tat vor dem Absenden per Javascript alle x Zeichen einen Zeilenumbruch (\n) einfügen. Dazu benötigst Du Funktionen des string-Objektes, die in SelfHTML/Javascript beschrieben sind. Wie Du das anstellst, bleibt Deiner Phantasie überlassen. Man könnte zum Beispiel Leerzeichen suchen (indexOf) und, sobald man eines findet, daß weiter als x Zeichen vom Anfang entfernt ist, dort ein \n einfügen (Kombination aus substr-Aufrufen).

Gruß,
  soenk.e