如何在xsl文件中使用参数(默认值)调用模板?

时间:2012-03-28 07:05:38

标签: xslt xslt-1.0

在以下模板调用中

  <xsl:call-template name="My_Class">
    <xsl:with-param name="className" select="getClassName()"/>
    <xsl:with-param name="baseClassName" select="??????"/>
  </xsl:call-template>

我必须使用第二个参数的值调用My_Class模板,即用户定义的baseClass。即假设我想通过将第二个参数的值(在上面的代码中显示为????)作为“balaji”来调用此模板。 有关于上述的任何建议吗?提前谢谢。

1 个答案:

答案 0 :(得分:4)

如果您想将参数作为固定参数传递,您可以执行以下操作:

<xsl:call-template name="My_Class">
    <xsl:with-param name="className" select="getClassName()"/>
    <xsl:with-param name="baseClassName" select="'balaji'"/>
</xsl:call-template> 

或者,您可以将值指定为模板本身的默认值

<xsl:call-template name="My_Class">
    <xsl:with-param name="className" select="getClassName()"/>
</xsl:call-template> 

<xsl:template name="My_Class">
   <xsl:param name="className" />
   <xsl:param name="baseClassName" select="'Balaji'" />
   <xsl:value-of select="$baseClassName" />
</xsl:template>

这是你在找什么?