HI,
我想选择除第一个节点以外的所有节点。我的xsl和xml是这样的,但我没有得到它的输出。
<Categories>
<Category>
<Title>Business</Title>
</Category>
<Category>
<Title>Politics</Title>
</Category>
</Categories>
我的xsl
<xsl:template match="Categories">
<xsl:variable name="restallTitles">
<xsl:value-of select="//*[position() > 1]"/>
</xsl:variable>
<xsl:for-each select="Categories/Category">
<xsl:if test="$restallTitles">
<xsl:choose>
<xsl:when test="position() mod 2 = 1">
<li class=""><xsl:value-of select="Title"/></li>
</xsl:when>
<xsl:otherwise>
<li class="odd"><xsl:value-of select="Title"/></li>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:for-each>
</xsl:template>
它没有显示任何输出......任何人都知道我哪里出错::
编辑:: 我期待输出 在这种情况下“政治”,但基本上我只想要“商业”
答案 0 :(得分:1)
如果您的意思是“除文档中的第一个以外的所有<Category>
”,请尝试:
<xsl:for-each select="(Categories/Category)[position() gt; 1]">
<li>
<xsl:if test="position() mod 2 = 1">
<xsl:attribute name="class">odd</xsl:attribute>
</xsl:if>
<a class="video video-lightbox ratio-16-9" href="{$url1}">
<xsl:value-of select="Title"/>
</a>
</li>
</xsl:for-each>