XSLT没有提循环功能,但可以通xsl:call-template递归调用来模拟循环功能。示例:
<xsl:template name="loopfunc">
<xsl:param name="start"/>
<xsl:param name="end"/>
.......
<xsl:if test="$start < $end">
<xsl:call-template name="loopfunc">
<xsl:with-param name="start"><xsl:value-of select="$start+1"/></xsl:with-param>
<xsl:with-param name="end" ><xsl:value-of select="$end"/></xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:template>
可以看到,在这个模板结束的地方,再次调用自身,并将一个参数增加1,用于判断循环结束。

没有评论:
发表评论