Visualizzare il codice HTML nel foglio di stile XSL

Questo articolo descrive come usare i fogli di stile XSL per usare i tag HTML all'interno dei dati XML.

Versione originale del prodotto: Fogli di stile XSL
Numero KB originale: 264665

Riepilogo

Quando i dati XML contengono tag HTML, tali tag vengono considerati come dati normali per impostazione predefinita e non vengono analizzati come HTML. L'output viene visualizzato come testo senza effetti HTML. Questo articolo illustra come usare i fogli di stile XSL per usare i tag HTML all'interno dei dati XML.

Ulteriori informazioni

Nell'elemento xsl:value-of usare la proprietà XSL disable-output-escapeing e quindi impostarla su . Per impostazione predefinita, disable-output-escapeing è impostato su no. Questa proprietà è stata aggiunta con la versione di maggio 2000 del parser XML.

È possibile installare la versione più recente del parser MS XML da MSXML Roadmap.

Nell'esempio XML/XSL seguente viene illustrato come usare i fogli di stile XSL per usare i tag HTML all'interno dei dati XML:

Here is the XML file that we want to display...
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="testHTML.xsl"?>
<TABLE>
    <ROW>
        <F1>Next one should be in H1 heading</F1>
        <F2><H1>This is a H1 heading</H1></F2>
    </ROW>
    <ROW>
        <F1>Next one should be Italic</F1>
        <F2><I>I am italic</I></F2>
    </ROW>
    <ROW>
        <F1>Next one is a link</F1>
        <F2>Goto <A HREF="https://www.microsoft.com">Microsoft</A></F2>
    </ROW>
</TABLE>

I dati HTML nella prima <F2> riga possono essere scritti con sequenze di caratteri speciali e la sezione CDATA, come illustrato negli esempi seguenti:

  • <F2>&lt;H1&gt;This is a H1 heading&lt;/H1&gt;</F2>
  • <F2>

Nota

I caratteri come < e > sono caratteri riservati in XML e non vengono interpretati se vengono inseriti in un file XML. Sostituire questi caratteri con sequenze di caratteri con distinzione tra maiuscole e minuscole. Per altre informazioni sul lavoro di Microsoft con XML, vedere Panoramica di MSXML SDK.

Di seguito è riportato il file TestHTML.xsl corrispondente che illustra come usare i fogli di stile XSL per usare i tag HTML all'interno dei dati XML:

==========================================================================
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
<xsl:template match="TABLE">
<HTML>
    <BODY>
        <TABLE border='1' style='table-layout:fixed' width='600'>
            <TR bgcolor='#FFFF00'>
                <TD>Expected action</TD>
                <TD>HTML display</TD>
            </TR>
            <xsl:for-each select="ROW">
            <TR>
                <TD><xsl:value-of select='F1'/></TD>
                <TD><xsl:value-of select='F2' disable-output-escaping="yes"/></TD>
            </TR>
        </xsl:for-each>
        </TABLE>
    </BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
==========================================================================

Riferimenti