我有xml看起来像:
<ProductPrice>
<CurrencySymbol>€</CurrencySymbol>
<Amount>4.15</Amount>
<DependsOn>> 500 €</DependsOn>
<SiteGuid>00000000-0000-0000-0000-000000000000</SiteGuid>
<Disabled>false</Disabled>
<SortId>0</SortId>
</ProductPrice>
我如何处理类似的XSLT?
<xsl:for-each select="./Prices/ProductPrice">
<xsl:if test="DependsOn = '> 500 €'">
<xsl:value-of select="Amount"/>
<xsl:text></xsl:text>
<xsl:text>
</xsl:text>
</xsl:if>
</xsl:for-each>
由于实体引用,if子句无法工作。 有什么解决方案吗?
答案 0 :(得分:1)
由于实体引用,if子句无法工作。任何 解决方案?
没有问题,您的代码按预期工作。
此转化:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/*">
<xsl:if test="DependsOn = '> 500 €'">
<xsl:value-of select="Amount"/>
<xsl:text></xsl:text>
<xsl:text> </xsl:text>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
应用于提供的XML文档:
<ProductPrice>
<CurrencySymbol>€</CurrencySymbol>
<Amount>4.15</Amount>
<DependsOn>> 500 €</DependsOn>
<SiteGuid>00000000-0000-0000-0000-000000000000</SiteGuid>
<Disabled>false</Disabled>
<SortId>0</SortId>
</ProductPrice>
生成想要的正确结果:
4.15