Ich versuche, eine Zeichenfolge zu verwenden, die doppelte Anführungszeichen im title-Attribut eines Ankers enthält. Bisher habe ich Folgendes versucht:
<a href=".." title="Some \"text\"">Some text</a>
<!-- The title looks like `Some \` --!>
und
<a href=".." title="Some "text"">Some text</a>
<!-- The title looks like `Some ` --!>
Bitte beachten Sie, dass die Verwendung von einfachen Anführungszeichen keine Option ist.
Antworten:
Diese Variante -
Ist korrekt und funktioniert wie erwartet - auf der gerenderten Seite werden normale Anführungszeichen angezeigt.
quelle
<a href="#" title="Foo "Bar"">Testing</a>
und<a href="#" title="Smart quotes ”Bar“">Testing too</a>
arbeite für mich.data-editable-note="<?php echo str_replace('"', '"', $note); ?>"><?php echo mark::up($note); ?></div>
Hier ist ein Ausschnitt der HTML-Escape-Zeichen, die von einer zwischengespeicherten Seite auf archive.org stammen :
quelle
Der Escape-Code
"
kann auch anstelle von verwendet werden"
.quelle
Verwenden
"
ist der Weg, um es zu tun. Ich habe Ihr zweites Code-Snippet ausprobiert und es funktioniert sowohl in Firefox als auch in Internet Explorer.quelle
Es kann mit jedem Zeichen aus der HTML Escape- Zeichenliste funktionieren , aber ich hatte das gleiche Problem mit einem Java-Projekt. Ich habe verwendet
StringEscapeUtils.escapeHTML("Testing \" <br> <p>")
und der Titel war<a href=".." title="Test" <br> <p>">Testing</a>
.Es hat nur bei mir funktioniert, als ich die StringEscapeUtils in geändert habe
StringEscapeUtils.escapeJavascript("Testing \" <br> <p>")
und es hat in jedem Browser funktioniert.quelle
Es gibt mindestens eine Situation, in der die Verwendung von einfachen Anführungszeichen nicht funktioniert, wenn Sie das Markup "on the fly" aus JavaScript erstellen. Sie verwenden einfache Anführungszeichen, um die Zeichenfolge zu enthalten, und dann kann jede Eigenschaft im Markup doppelte Anführungszeichen für ihren Wert haben.
quelle
Vielleicht können Sie JavaScript verwenden, um Ihr browserübergreifendes Problem zu lösen. Es verwendet einen anderen Fluchtmechanismus, mit dem Sie offensichtlich bereits vertraut sind:
Es trennt die Funktionen von HTML, JavaScript und CSS nicht so, wie es die Leute heutzutage wollen, aber wen müssen Sie glücklich machen? Ihre Benutzer oder Techniker, die Sie nicht kennen?
quelle
Mit diesem PHP-Code können Sie Sonderzeichen auflisten ...
quelle