2013-03-16 94 views
-1

拉我有這個XSLT文件:XSL變量沒有價值

<?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:output method="xml" indent="yes" encoding="utf-8" 
     omit-xml-declaration="yes"/> 

    <xsl:variable name="desc" select="//myNode[@objectId='desc']/@select" /> 
    <xsl:variable name="largeImage" 
      select="//myNode[@objectId='largeImage']/@select" /> 

    <xsl:template match="/"> 

     <xsl:value-of select="$largeImage" />   
     <xsl:value-of select="$desc" /> 

    </xsl:template> 
</xsl:stylesheet> 

與該XML:

<root> 
    <myNode type="popup" link="image" label="Large Image:" 
     objectId="largeImage" customAttribute="No" /> 
    <myNode type="editor" label="Description:" objectId="desc" required="yes"/> 
</root> 

出於某種原因,顯示的desc值變量的作品,但不是largeImage

任何人都知道我在XSLT中做錯了什麼?

+3

都不應該工作。這些''元素中沒有'@ select'屬性。 – 2013-03-16 02:07:07

+0

Downvoting,因爲正如Mads所說,很明顯你沒有描述你實際遇到的問題。 – 2013-03-16 17:45:43

回答

0

預期結果是什麼?如果你想顯示「大圖:」和「描述:」,這將工作:

<xsl:variable name="desc" select="//myNode[@objectId='desc']/@label" /> 
<xsl:variable name="largeImage" 
       select="//myNode[@objectId='largeImage']/@label" />