Copying sources and texts (also in parts) for publishing without our permission is NOT ALLOWED. We are fed up with finding our work on other sites (like stackoverflow).
Das Kopieren von Quellcode und Texten (auch in Auszügen) ist nicht erlaubt. Wir haben es gründlich satt, unsere Arbeit auf anderen Webseiten zu finden.

Copying for non-public usage is allowed.           Das private Kopieren und Benutzen ist natürlich erlaubt und erwünscht.
18. Feb 2010
Teaser

ExtJS: Fehler “unterminated string literal” bei .load()

Wenn Sie auf Ihrer Webseite mit Ext JS und der Funktion “xyz.open()” Daten nachladen, kann es vorkommen, dass Ihre Maske die Daten nicht zeigt und der Ladevorgang nicht beendet wird. Sie sehen dann (sofern Sie es aktiviert haben) die Lademeldung weiterhin auf dem Bildschirm.

Die Meldung in der Fehlerkonsole des Browsers lautet (z.Bsp.):

Fehler: unterminated string literal
Quelldatei: http://localhost/ext/ext-all.js
Zeile: 7, Spalte: 73
Quelltext:
({“count”:1,”success”:true,”items”:[{“id”:1234,”ref”:””,”txt”:”Shell

Grund für den Fehler ist dann meist ein Zeilenumbruch (CRLF) im Text (hier in der Variablen “txt”).

Diesen umbruch kann das JSON Format zwar an Ihre Anwendung übertragen, JavaScript kommt damit dann aber nicht zurecht.

Lösung:

Ersetzen Sie bei der JSON Erstellung (z.Bsp. in PHP) den Umbruch durch ein “\n”:

eregi_replace(chr(13).chr(10),'\n',$to->Text)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

achtzehn − 17 =