Andreas: Anführungszeichen escapen

Wie kann ich in Javascript Anführungszeichen escapen, wenn ich z.B. folgendes Beispiel habe:

<input type="button" ... onClick="if(confirm('text mit " drin')) { ... } ...>

Dann macht er bei text mit " das onClick zu, egal ob mit \ davor oder nicht.

  1. jetzt nicht getestet, aber ich glaube, ich hab's mal so gelöst:

    quot = """;

    <input type="button" ... onClick="if(confirm('text mit "+quot+" drin')) { ... } ...>

    Kalle

    1. Blöd, der Button kommt aus ner Perlfunktion

      Util::button(value => 'Delete', url => ['delete', file => $file_id], confirm => 'Datei "..." wirklich loeschen?');

      Da funktioniert der Trick nicht so leicht.

  2. Hello out there!

    <input type="button" ... onClick="if(confirm('text mit " drin')) { ... } ...>
    Dann macht er bei text mit " das onClick zu, egal ob mit \ davor oder nicht.

    <input type="button" ... onClick='[code lang=javascript]if(confirm(\'text mit " drin\')) { ... }' ...>[/code]

    Tut’s das? (Es ist mehr geraten denn gewusst. Ungetestet; möglicherweise falsch.)

    See ya up the road,
    Gunnar

    --
    “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
  3. Hallo,

    Dann macht er bei text mit " das onClick zu, egal ob mit \ davor oder nicht.

    Du könntest es so versuchen:
    onclick="alert('foo \u0022bar\u0022');"

    Das gibt aus: foo "bar"

    Ciao,
    Andreas

    --
    "Das Corporate Design für das Internet sieht eine Reihe von Grafikelementen vor, die die Optik der Webseite visuell und funktionell beeinflussen." - (Zitat aus dem "Styleguide Corporate Design"  eines großen Konzerns...)
    1. YIPPY!!!!

      Das wars, danke!