是在输出中创建函数创建所需空间的任何方法,因为我保持热编码是我需要的空间<xsl:text> </xsl:text >
,请建议一个函数根据传递的参数生成空格,请建议< / p>
答案 0 :(得分:0)
您可能正在查看递归模板。像这样:
<xsl:template name="WriteSpaces">
<xsl:param name="count" />
<xsl:if test="$count > 0">
<xsl:text> </xsl:text>
<xsl:call-template name="WriteSpaces">
<xsl:with-param name="count" select="$count - 1" />
</xsl:call-template>
</xsl:if>
</xsl:template>
请注意,调用它实际上会污染您的代码,而不仅仅是直接放置空格。对于静态内容,我可能只是使用文本。对于动态内容(即如果你想要<xsl:text> </xsl:text><xsl:value-of select="." /><xsl:text> </xsl:text>
),我会使用concat()函数,因为它不限制参数的数量 - 所以你可以像<xsl:value-of select="concat(' ', ., ' ')" />
那样编码。