document.write und Hochkommata
Stefan Kremer
- javascript
0 Rouven0 Stefan Kremer0 basti_p0 Stefan Kremer0 Rouven0 plan_B0 Stefan Kremer
Hallo,
ich muss folgende Zeile mit document.write ausgeben:
<script language="javascript">domMenu_activate('domMenu_BJ');</script>
Das Problem sind die beiden Hochkommata. Nach Beiträgen im Web habe ich folgendes draus gemacht:
document.write('<script language="javascript">domMenu_activate('domMenu_BJ');</script>');
Bloß, es klappt nicht... Hat jemand eine Idee oder Lösung?
Hello,
Bloß, es klappt nicht... Hat jemand eine Idee oder Lösung?
was heißt das? Was sagt die Firefox Fehlerkonsole? Hast du mal nachgeschaut, ob es nicht eher am </script> liegt?
Oh, by the way, language="javascript" wird nicht benötigt, stattdessen solltest du type="text/javascript" schreiben.
MfG
Rouven
was heißt das? Was sagt die Firefox Fehlerkonsole? Hast du mal nachgeschaut, ob es nicht eher am </script> liegt?
Die Fehlerkonsole sagt:
Fehler: unterminated string literal
Quelldatei: file:///c:/OnlineDreamweaver/2006/mn_LakeHavasu.htm
Zeile: 536, Spalte: 19
Quelltext:
document.write('domMenu_activate('domMenu_BJ');
und markiert dabei das Hochkomma vor domMenu. Das Problem dürfte sein, dass das '); am Ende der monierten Zeile trotz des \ so interpretiert wird, als würde es das document.write abschließen. Das soll es aber nicht...
Oh, by the way, language="javascript" wird nicht benötigt, stattdessen solltest du type="text/javascript" schreiben.
Danke für den Hinweis, habs geändert.
Hallo,
nimm anstelle der Hochkommata doch normale Anführungszeichen - ist an dieser Stelle ohnehin unerheblich.
Grüße Basti
Es liegt, wie Du schon vermutet hast, am <script> selbst. Wenn ich nur diese Zeile aus dem document.write Teil rausnehme klappt alles. Aber dann steht es an falscher Stelle :(
Hintergrund ist, dass ich mit window.location.search abfrage, wie meine Seite aufgerufen wird um dann je nach übergebenem Wert (webseite.htm?wk oder webseite.htm?ct) eine andere optische Gestaltung der Seite auszulösen.
Wenn ich jetzt diese <script>-Zeile nicht im Javascript (wo ja die window.location.search-Abfrage drin ist) ausführen kann bräuchte ich ein Äquivalent für diese Abfrage außerhalb Javascript. Ich fürchte nur, dass es keins gibt...
Hello,
Wenn ich jetzt diese <script>-Zeile nicht im Javascript (wo ja die window.location.search-Abfrage drin ist) ausführen kann bräuchte ich ein Äquivalent für diese Abfrage außerhalb Javascript. Ich fürchte nur, dass es keins gibt...
das Problem ist anders, als du vermutest. Der Browser findet beim Parsen innerhalb deines Strings das </script> und nimmt an, das Ende des Blocks gefunden zu haben. Alles was du tun musst ist das Ding zu verstecken, z.B. durch
"</" + "script>"
MfG
Rouven
Hallo,
Alles was du tun musst ist das Ding zu verstecken, z.B. durch
"</" + "script>"
oder besser maskieren:
"...<\/script>"
Gruß plan_B
Das wars :))) Vielen Dank! Hast mein Projekt gerettet hehe