我有一个选择下拉菜单和一个跨度,它们在javascript文件中分别称为'quantity1','quantity2'和'price1','price2'等。
在XSLT中,我需要能够将该元素的ID声明为相对于循环的位置,但不能弄清楚如何。
<span id="price<xsl:value-of select="position()"/>/>£<xsl:value-of select="price"/>">
这不起作用(显然!),socan有谁解释如何实现这个目标?
答案 0 :(得分:1)
假设您在XSLT转换中创建了<span>
元素,则可以使用attribute value template语法。像这样:
<span id="price{position()}">£<xsl:value-of select="price"/></span>
<span>
将在xsl:for-each
的模板或position()
构造中创建,以便为您提供所期望的内容。
您还可以使用与您最初尝试的xsl:value-of
更详细的xsl:attribute结构:
<span>
<xsl:attribute name="id">price<xsl:value-of select="position()"/></xsl:attribute>
£<xsl:value-of select="price"/>
</span>
属性值模板的花括号看起来更符合我的口味。