在我的ESP(电子邮件服务提供商)中我有一个列表或带有变量的客户,我有xslt将XML提要解析为(动态)邮件。 现在,我想个性化我的邮件,向不同的电子邮件订阅者发送不同的内容。
我有一个变量$ profile.pos1_day_camp(可以是数值),我想根据这个变量显示它们的内容。内容因子节点而异。它是商店的@id。
所以,显示
{if $profile.pos1_day_camp == 1}
<xsl:for-each select="//shop[@id='1']/offer]">
**"show content of shop id 1"**
</xsl:for-each>
{/if}
{if $profile.pos1_day_camp == 17}
<xsl:for-each select="//shop[@id='17']/offer]">
**"show content of shop id 17"**
</xsl:for-each>
{/if}
等。但是这将成为太多的代码,因为有许多可能的值,因此我希望将变量放在for-each中。那可能吗?如果我这样做,它什么都不显示:
<xsl:for-each select="//shop[@id='{$profile.pos1_day_camp}']/offer">
**"show content of shop id xx"**
</xsl:for-each>
谢谢!
答案 0 :(得分:0)
明白了,谢谢
<xsl:for-each select="shop">
{if $profile.pos1_daily == <xsl:value-of select="@id" />}
....
<xsl:for-each select="offer">
</xsl:for-each>
{/if}
</xsl:for-each>