2014-12-13 172 views
1

我有這樣的XML:XSLT轉換XML到HTML的瀏覽器不工作

<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet type="text/xsl" href="transformation.xslt"?> 
<data-xml> 
    <limit type="integer">10</limit> 
    <entries type="array"> 
     <entry> 
      <key>key1</key> 
      <value type="integer">1</value> 
     </entry> 
     <entry> 
      <key>key2</key> 
      <value type="integer">2</value> 
     </entry> 
     <entry> 
      <key>key3</key> 
      <value type="integer">3</value> 
     </entry> 
    </entries> 
</data-xml> 

和XSLT等(transormation.xslt),這應該transfrom我的XML與表HTML:

<?xml version="1.0" encoding="utf-8" ?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> 
<xsl:output method="xml" indent="yes"/> 
<xsl:template match="/data-xml"> 

<html> 
    <head> 
     <title>XML data</title> 
    </head> 
    <body> 
     <strong>Limit: </strong> <xsl:value-of select="limit"/> 
     <table> 
      <tr> 
       <th>Key</th> 
       <th>Value</th> 
      </tr> 
      <xsl:for-each select="entries/entry"> 
       <tr> 
        <td> <xsl:value-of select="key"/> </td> 
        <td> <xsl:value-of select="value"/> </td> 
       </tr> 
      </xsl:for-each> 
     </table> 
    </body> 
</html> 
</xsl:template> 
</xsl:stylesheet> 

XML和XSLT文件加載成功,而是希望HTML我看到這一點: ugly plain text

我在FF在Chrome測試這一點,並獲得相同的結果。 但非常難看,不正確的結果。

我該怎麼做?

謝謝你。

+1

嘗試改變'method'到'html'。 – JLRishe 2014-12-13 01:45:31

+0

@JLRishe,你是對的!它是如此的瑣碎,但它打破了我的神經。謝謝! – 2014-12-13 01:59:10

回答

2

的解決方案是,該輸出方法需要 「HTML」:

<xsl:output method="html" indent="yes" />