dedlfix: Zeilenumbruch in JSON-Objekt erzeugt Fehler

Beitrag lesen

Hi!

Noch einmal: Mit welcher Funktion ersetze ich die Zeilenumbrüche, die bei der Eingabe in das teaxtarea gesetzt werden, durch solche, die für JavaScript geeignet sind (also durch \n )?

Mit der für die Ersetzung von Zeichenketten in Strings. Aus dem \r machst du die beiden Zeichen \ und r und statt einem \n notierst du \ und n. Die gezeigte PHP-Funktion kümmert sich noch um weitere Zeichen, die ebenfalls problematisch sind. Es schadet nicht, wenn du die ebenfalls berücksichtigst

Der Witz ist ja, dass ich den Inhalt des textarea auslesen und mit alert ausgeben kann.

In dem Fall verarbeitest du Daten.

D.h. der Fehler taucht erst bei eval auf, weil eval da ein Zeilenende sieht und kein \n.

Weil du hier aus Daten Code machen möchtest. Das interne Speichern von Daten ist kein Problem, auch nicht die Übernahme aus der Textarea. Erst der Kontextwechsel von Daten zu Code benötigt die Berücksichtigung der Regeln für Code.

Also muss ich diese Umbrüche durch \n ersetzen. Reicht es also, \n durch \n zu ersetzen, oder ist der von Hand eingegebene Zeilenumbruch ein anderer?

Es gibt nur die zwei bekannten Zeichen \r und \n, die bei einem Zeilenumbruch eine Rolle spielen.

Ich hoffe, wir reden jetzt nicht völlig aneinander vorbei...

So war das schon besser verständlich. Aber: Warum benötigst du überhaupt eval() und erzeugst das Objekt nicht direkt aus den gegebenen Daten?

Lo!