0

第一次在这里问,但一直在四处寻找,但没有找到我的问题的答案,所以我想试试看。

我需要的输出必须与下面的示例完全相同,但我还需要获取货币的价值:

<DBField name='Currency' value='USD'/>

我试过这个没有成功:

<DBField name='Currency' value='<xsl:value-of select="Currency"/>'/>

任何人都知道如何做到这一点?

4

1 回答 1

1

有两种方法可以做到这一点。

您可以使用xsl:attribute命令。

<DBField name='Currency'>
    <xsl:attribute name="value">
       <xsl:value-of select="Currency"/>
    </xsl:attribute>
</DBField>

或者,您可以使用“属性值模板”

<DBField name='Currency' value='{Currency}'/>

花括号表示它是一个要计算的表达式,而不是字面输出。

通常,首选使用属性值模板,因为它们编写起来更整洁。您可以使用xsl:attribute来仅在特定条件下显示属性(例如,您可以将其放入xsl:if中),或者如果您想要基于 XML 输入命名的动态属性。

于 2013-05-08T13:08:01.113 回答