我有变量x
这是一个数字。我有一条线。 ("<name>James</name>"
)我需要打印这个句号x
次。我可以轻松地完成吗?没有复杂?
答案 0 :(得分:2)
如果您使用的是XSLT 2.0,那么您可以这样做......
<xsl:for-each select="for $i in 1 to $x return $i">
<name>James</name>
</xsl:for-each>
答案 1 :(得分:1)
以下是未经测试的......
<xsl:call-template name="show">
<xsl:with-param name="text"><name>James</name></xsl:with-param>
<xsl:with-param name="count">50</xsl:with-param>
</xsl:call-template>
<xsl:template name="show">
<xsl:param name="text"/>
<xsl:param name="count"/>
<xsl:value-of select="$text"/>
<xsl:if test="number($count)>0">
<xsl:call-template name="show">
<xsl:with-param name="text" select="$text"/>
<xsl:with-param name="count" select="number($count)-1"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
已更新为<name>
和</name>
。
答案 2 :(得分:0)
您可以在样式表中的某处添加以下内容:
<mydata>
<x/><x/><x/><x/> <!-- to print four times -->
</mydata>
然后
<xsl:for-each select="document()//mydata/x">
<name>James</name>
</xsl:for-each>
这利用了在XSLT程序中包含您自己的数据的能力,并通过document
函数访问它(没有参数表示样式表本身)。