Bernd Stadlhofer: String mit illegal Characters escapen

Ich habe folgendes Problem:

Ich habe einen String, welcher in einem Java-Object gespeichert ist. Diesen String muss ich in einem JSP einer JavaScript Variable zuweisen.
Das Problem ist, dass dieser String aber Zeichen enthalten kann, welcher einen Fehler im JavaScript verursacht (illegal Character od Syntax Error). Ich kann die einzelnen Zeichen aber nicht escapen, weil ich nur auf den String über ein Java Scriptlet im JSP <%= böser String mit illegalen Zeichen %> zugreifen kann.

Wie kann ich nun diesen gesamten String escapen, sodass der ganze Inhalt einfach als String im JavaScript interpretiert wird? escape(...), String(...) hab ich schon probiert, hat aber kein befriedigendes Ergebnis gebracht.

Vielen Dank für eure Hilfe!

  1. Hi,

    Das Problem ist, dass dieser String aber Zeichen enthalten kann, welcher einen Fehler im JavaScript verursacht (illegal Character od Syntax Error).

    damit kann der Themenbereich nicht "JAVASCRIPT" sein - es sei denn Du möchtest wissen, wie der Code aussehen muss, den Du JavaScript zur Verfügung stellst. Wenn Du erst einmal defekten JavaScript-Code produziert hast, ist es für diesen Themenbereich zu spät.

    Wie kann ich nun diesen gesamten String escapen, sodass der ganze Inhalt einfach als String im JavaScript interpretiert wird? escape(...), String(...) hab ich schon probiert, hat aber kein befriedigendes Ergebnis gebracht.

    Welche Java-Objekte, Taglibs usw. stehen Deiner JSP-Seite denn zur Verfügung?

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
  2. Moin!

    Keine Ahnung ob es hilft, aber Du kannst in JavaScript in einem String jedes Zeichen durch den ASCII Code erreichen. Statt var x="GEFAHR"; kannst Du also auch schreiben: var x="\x47\x45\x46\x41\x48\x52";

    -- Skeeve