2013-09-21 152 views
0

我在做這個簡單的XSLT:XSLT不渲染

<?xml version="1.0" encoding="utf-8"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl ="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"> 
    <xsl:template match="/"> 
    <h1>El meu primer document XSLT</h1> 
    <xsl:for-each select="pisos/pis"> 
     <strong>id:</strong> 
     <xsl:value-of select="id"/> 
    </xsl:for-each> 
    </xsl:template> 
</xsl:stylesheet> 

這是我的XML文件:

<Stock_pisos> 
<pisos> 
    <pis> 
     <id>1</id> 
    </pis> 
    </pisos> 
</Stock_pisos> 

然而,文件只是呈現H1標題。

任何提示?

回答

2

你應該選擇根元素,第一:

<?xml version="1.0" encoding="utf-8"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl ="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"> 
    <xsl:template match="/"> 
    <h1>El meu primer document XSLT</h1> 
     <xsl:for-each select="Stock_pisos/pisos/pis"> 
     <strong>id:</strong> 
     <xsl:value-of select="id"/> 
    </xsl:for-each> 
    </xsl:template> 
</xsl:stylesheet> 
+3

在代碼方面貼出你的建議是正確的,但術語「'根node'」是錯誤的XSLT/XPath的背景下爲http:/ /www.w3.org/TR/xpath/#root-node由'/'選擇,表示文檔節點而不是根元素。所以我想你想說「選擇'根元素'」。 –