如何在xslt 1.0中创建一个空值为10次的元素

时间:2016-06-13 19:12:19

标签: xslt-1.0

我需要在xslt 1.0中创建一个元素五次

以便输出

<element1></element1>
<element1></element1>
<element1></element1>
<element1></element1>
<element1></element1>

在xslt中是否存在类似for(int i = 1; i&lt; = 5; i ++)的循环。许多页面建议使用数组但是在xslt 2.0中

1 个答案:

答案 0 :(得分:1)

如果您有一个变量但不是太大的数字,您可以使用简单的递归

<xsl:template name="doelements">
   <xsl:param name="howmany" select="0"/>
   <xsl:if test="$howmany  &gt; 0">
      <element1/>
      <xsl:call-template name="doelements">
          <xsl:with-param name="howmany">
             <xsl:value-of select="$howmany - 1"/>
          </xsl:with-param>
      </xsl:call-template>
   </xsl:if>
</xsl:template>

所以如果您想要其中5个,您可以致电

      <xsl:call-template name="doelements">
          <xsl:with-param name="howmany">
             <xsl:value-of select="5"/>
          </xsl:with-param>
      </xsl:call-template>

(没有检查,可能是一个接一个,留给读者的练习; - )