我有任何参数
<xsl:param name='param_1'/>
<xsl:param name='param_2'/>
...
<xsl:param name='param_100'/>
以及id为'1'、id为'2'的项的任何模板。。。id="100">
<xsl:template match='item[@id="1"]'>
<xsl:value-of select='$param_1'/>
</xsl:template>
<xsl:template match='item[@id="2"]'>
<xsl:value-of select='$param_1'/>
</xsl:template>
...
...
<xsl:template match='item[@id="100"]'>
<xsl:value-of select='$param_100'/>
</xsl:template>
如何将项目组合到一个模板中?
类似这样的东西:
<xsl:template match='item[@id="1" or @id="2" or @id="100"]'>
<xsl:variable name='id' select='@id'/>
<xsl:value-of select='$param_$id'/>
</xsl:template>
xsl:choot not good,items和params非常多。
与其传入100个参数,不如传入一个具有内部结构的参数:
<params>
<param nr="1" value="x"/>
<param nr="2" value="y"/>
..
</params>
那么它就是
<xsl:template match="item[@id >= 1 and 100 >= @id]">
<xsl:value-of select="$params//param[@nr=current()/@id]"/>
</xsl:template>