我有以下声明:
<xsl:call-template name="ad_state800x100"><xsl:with-param name="state" select="/*/locations/@state" /></xsl:call-template>
对于xpos
<xsl:variable name="xpos" select="substring-before(position(),'0')" />
我想要的是以下内容:
<xsl:call-template name="ad$xpos_state800x100">
因此,如果该位置为10,则为:
<xsl:call-template name="ad1_state800x100">
我如何实现这个
答案 0 :(得分:0)
如果要动态决定调用多个模板中的哪一个,那么正确的XSLT机制就是xsl:apply-templates。
您还没有告诉我们您的问题,因为我确切知道您将如何在您的情况下执行此操作,或者实际上是否需要动态调度才能成为解决方案的一部分。事实上,你还没有告诉我们你的问题 - 只是尝试了一个不会起作用的解决方案。