Der folgende einfache Codeblock kann in einer statischen HTML-Seite angezeigt werden, führt jedoch zu einem JavaScript-Fehler. Wie sollten Sie dem eingebetteten doppelten Anführungszeichen im onClick-Handler entkommen (zB "xyz")? Beachten Sie, dass der HTML-Code dynamisch generiert wird, indem Daten aus einer Datenbank gezogen werden, deren Daten Auszüge aus anderem HTML-Code sind, die entweder einfach oder doppelt sein können Zitate. Es scheint, dass ein einzelnes Backslash vor dem doppelten Anführungszeichen Zugabe nicht den Trick tut.Escaping von doppelten Anführungszeichen in JavaScript onClick-Ereignishandler
<script type="text/javascript">
function parse(a, b, c) {
alert(c);
}
</script>
<a href="#x" onclick="parse('#', false, '<a href=\"xyz'); return false">Test</a>
Getestet habe ich diese nur in FF3.6 und IE8 unter einem ähnlichen Szenario und es hat nicht funktioniert. Aber das Ersetzen der "mit " tat. Ich testete auch den genauen Code oben und es funktionierte in beide Richtungen. Kurz gesagt scheint die \ x22 nicht in allen Szenarien zu funktionieren, und Sie sollten " in diesem Fall versuchen. – SpliFF
Nice. " scheint zu arbeiten in HTML-Tag-Attribute in Webkit und Firefox und Opera. – NoBugs
\ x22 ist der einzige für mich gearbeitete – Ruwantha