604 Stimmen

Wie entferne ich Ampersands in XML, damit sie in HTML als Entities dargestellt werden?

Ich habe einen XML-Text, den ich in einer HTML-Seite darstellen möchte. Dieser Text enthält ein kaufmännisches Und, das ich in seiner Entitätsdarstellung wiedergeben möchte: & .

Wie entferne ich dieses kaufmännische Und in der XML-Quelldatei? Ich habe versucht & dekodiert, aber dies wird als das eigentliche kaufmännische Und-Zeichen ( & ), das ist ungültig in HTML .

Ich möchte es also so entkommen lassen, dass es wie folgt dargestellt wird & in der Webseite, die die XML-Ausgabe verwendet.

16voto

Serhat Akay Punkte 512

In meinem Fall musste ich es ändern in %26 .

Ich musste fliehen & in einer URL. Also & hat sich für mich nicht bewährt. Die urlencode Funktionsänderungen & a %26 . Auf diese Weise beschwerten sich weder XML noch der URL-Mechanismus des Browsers über die URL.

8voto

mcampos Punkte 121

Ich habe es versucht &, aber es hat nicht funktioniert. Basierend auf Wim ten Brink's Antwort Ich habe &amp ausprobiert und es hat funktioniert.

Einer meiner Entwicklerkollegen schlug mir vor, & zu verwenden, und das funktionierte unabhängig davon, wie oft es gerendert wurde.

7voto

Riley Major Punkte 1702

& ist die Art und Weise, wie ein kaufmännisches Und in den meisten Abschnitten eines XML-Dokuments dargestellt wird.

Wenn Sie XML innerhalb von HTML anzeigen lassen wollen, müssen Sie zunächst richtig kodiertes XML erstellen (was eine Änderung der & a & ) und dann verwenden, um korrekt kodiertes HTML zu erstellen (was wiederum eine Änderung der & a & ). Daraus ergibt sich:

&

Eine genauere Erklärung der XML-Kodierung finden Sie unter:

Welche Zeichen muss ich in XML-Dokumenten auslassen?

4voto

Rick Punkte 57

<xsl:text disable-output-escaping="yes">&amp;&nbsp;</xsl:text> reicht aus.

0voto

Sarath KS Punkte 17823

Überlegen Sie, ob Ihr XML wie folgt aussieht.

<Employees Id="1" Name="ABC">
  <Query>
    SELECT * FROM EMP WHERE ID=1 AND RES<>'GCF'
  <Query>
</Employees>

Sie können die <> direkt eingeben, da dies einen Fehler auslöst. In diesem Fall können Sie Folgendes verwenden &#60;&#62; als Ersatz dafür.

<Employees Id="1" Name="ABC">
  <Query>
    SELECT * FROM EMP WHERE ID=1 AND RES &#60;&#62; 'GCF'
  <Query>
</Employees>

_14.1 Wie man Sonderzeichen in XML verwendet_ hat alle Codes.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X