Textarea value mit mehrzeiligem Inhalt
blander
- javascript
Hallo zusammen
einer Textarea würde ich gerne einen Inhalt mit mehreren Zeilen zuweisen. Und der Inhalt wird aus einer Datenbank ausgelesen. Aber wenn ich jetzt per Javascript und echo sage dass die Textarea value haben soll, dann wird ein Fehler angezeigt. Ich will aber nicht die Textarea auch noch per php erstellen, sie soll bereits auf der Seite vorhanden sein.
Danke Gruß Andreas
Moin
...dann wird ein Fehler angezeigt.
Ähm... sollen wir nun raten welcher Fehler angezeigt wird? Wie sieht dein Code aus?
Lies dir bitte die Tipps für Fragende durch und versuchs nochmal.
Gruß Bobby
Hallo blander,
du weißt schon, dass hier ein Forum ist, wo man schreibt was man will (hast du), was man hat (?), was nicht funktioniert (?) und wie sich das äußert (?).
Dein Posting wäre in der jetzigen Form bei Twitter besser aufgehoben.
Du kennst http://de.selfhtml.org/javascript/objekte/elements.htm#value?
Gruß, Jürgen
@@JürgenB:
nuqneH
Dein Posting wäre in der jetzigen Form bei Twitter besser aufgehoben.
Es scheitert aber an der 140-Zeichen-Hürde. ;-)
Qapla'
Hello,
Dein Posting wäre in der jetzigen Form bei Twitter besser aufgehoben.
Es scheitert aber an der 140-Zeichen-Hürde. ;-)
Er kann es ja in Assembler twittern :-)
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hi,
einer Textarea würde ich gerne einen Inhalt mit mehreren Zeilen zuweisen. Und der Inhalt wird aus einer Datenbank ausgelesen. Aber wenn ich jetzt per Javascript und echo sage dass die Textarea value haben soll, dann wird ein Fehler angezeigt.
Sowas wie “unterminated string literal” o.ä. wird das wohl sein.
Du kannst in JavaScript nicht „einfach so“ Textliterale mit Zeilenumbrüchen drin notieren.
Entweder ersetzt du mit PHP die Zeilenumbrüche durch \n, bevor du einen JavaScript-String draus machst, oder du nutzt ein anderes Datenformat wie bspw. JSON, bei dessen Erstellung sich die dafür vorgesehene PHP automatisch darum kümmert, das richtig zu machen.
Wenn „Lesbarkeit“ des JavaScript-Codes für dich auch noch ein Kriterium sein sollte, dann kannst du ein Textliteral auch über Zeilengrenzen hinaus notieren, musst dann aber jede Zeile zwischendrin mit einem Backslash abschliessen. Der dient aber nur der Fortsetzung, den Zeilenumbruch musst du dann noch extra mittels \n davor angeben.
MfG ChrisB
Hallo ChrisB
vielen Dank für Deine Antwort. Es handelt sich um diesen Fehler. Und dieser erscheint wenn ich per echo "document.Textarea.value == '$Inhalt';"; mit aus php heraus eintragen an Javascript weitergeben will. Es soll die Möglichkeit bestehen Absätze eingeben zu können. Und wie ersetze ich nun Zeilenumbrüche durch /n wie es von Dir gezeigt wurde? Und am Besten wäre doch dann diesen Inhalt so bereits in der Datenbank zu speichern?
Vielen Danke Gruß Andreas
Hi,
Und wie ersetze ich nun Zeilenumbrüche durch /n wie es von Dir gezeigt wurde?
Schau dir die Stringfunktionen von PHP an.
Und am Besten wäre doch dann diesen Inhalt so bereits in der Datenbank zu speichern?
Nein.
In der Datenbank sollten idR. nur Rohdaten stehen.
Du willst hier Daten für die Ausgabe in einem bestimmten Kontext aufbereiten - also machst du das auch zu dem Zeitpunkt, bei der Ausgabe.
MfG ChrisB
Mahlzeit blander,
Und dieser erscheint wenn ich per echo "document.Textarea.value == '$Inhalt';"; mit aus php heraus eintragen an Javascript weitergeben will.
Aha - also mal wieder ein typischer Fall von "Kontextwechsel nicht beachtet". Informiere Dich zu diesem Begriff und melde Dich bei konkreten Fragen zur Umsetzung.
Und am Besten wäre doch dann diesen Inhalt so bereits in der Datenbank zu speichern?
Nein, auf keinen Fall.
MfG,
EKKi
Hello,
Und dieser erscheint wenn ich per echo "document.Textarea.value == '$Inhalt';"; mit aus php heraus eintragen an Javascript weitergeben will.
Aha - also mal wieder ein typischer Fall von "Kontextwechsel nicht beachtet". Informiere Dich zu diesem Begriff und melde Dich bei konkreten Fragen zur Umsetzung.
Und am Besten wäre doch dann diesen Inhalt so bereits in der Datenbank zu speichern?
Nein, auf keinen Fall.
... weil man ja nie so genau weiß, ob man das JavaScript später als eigene Ressource oder innerhalb einer HTML-Ressource bereitstellen will.
Der OP bräuchte also eine Funktion "javaScript2html()", die dann alle erforderlichen Maskierungen vornimmt und einen HTML-gerechten String zurückgibt. Dann müsste er nur einmal darüber nachdenken, welche Maßnahmen erforderlich sind.
Für Textausgaben gibt es ja bereits eine: htmlspecialchars().
Wie müsste solch eine Funktion aussehen?
Die könnte dann in den Artikel aufgenommen werden :-)
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg