BoneT: JavaScript und " und '

Beitrag lesen

Hallo Linksetzer,

also das Hilft nun wirklich nicht, wenn es so wäre, hätte ich hier nicht gepostet!
Das Problem liegt daran, dass es nur zwei Varianten gibt einen String einzuschließen " und '.
Aber ich bräuchte ne dritte, weil:
Nehmen wir an ich habe folgenden Ausschnitt aus der PHP Seite:

...
var $MyLink = "javascript:window.open('http://www.abc.de', 'ABC')";
$PHPReturn .= "<script type="text/javascript">";
$PHPReturn .= "  function FollowLink(Link);\n";
$PHPReturn .= "  {\n";
$PHPReturn .= "    IEExplorer.navigate(Link);\n";
$PHPReturn .= "    return false;\n";
$PHPReturn .= "  }\n";
$PHPReturn .= "</script>\n";
$PHPReturn .= "<a href="#" onClick="return FollowLink('".$MyLink."')"\n";
...

wobei der Einfachheit halber $MyLink hier auf einen festen Wert gesetzt wurde, der aber aus ner Datenbank kommt und genauso "http://de.selfhtml.org" heißen könnte.

Das Problem ensteht alsom wenn man einen MyLink hat, der keine URL zu einer Webseite enthält sondern z.B. den gezeigten JavaScript Code.

Dann wird die Funktion umgesetzt zu:

...onClick="return FollowLink('javascript:window.open('http://www.abc.de', 'ABC')')"...

woraufhin der JS interpreter denkt nach window.open( wäre der Parameter der Funktion zu ende, weil ja wieder ein ' kommt:

...onClick="return FollowLink('javascript:window.open('

und nach dem open(' erwartet JS natürlich eine )

Hat jemand ne Idee?

Danke!

PS: Und bitte nicht wieder Lösungen anbieten, wo die Funktion IEExplorer.navigate() weggelassen wird etwa so:

...onClick="".$MyLink""...

Das geht eben nicht weil, siehe vorherige Posts!

Danke!