使用 XSLT 从 XML 文件中选择 "type" 属性的值

Selecting the value of "type" attribute from XML file using XSLT

XML:

<laptop category="business">
        <name lang="en">HP Pavilion 15</name>
        <color>Silver</color>
        <processor>i5-1135G7</processor>
        <price type ="pln">3200</price>
        <price type ="usd">795</price>
        <price type ="euro">700</price>
</laptop>

XSL:

<h2><xsl:value-of select="name"/></h2>
<p>Color: <xsl:value-of select="color"/></p>
<p>Processor: <xsl:value-of select="processor"/></p>

我想如上所示,根据属性类型在 XSL 中显示 3 个不同的价格,我该怎么做?请帮忙。

问题不是很清楚

要显示特定价格,您可以使用 predicate - 例如(来自 laptop 的上下文),指令:

<xsl:value-of select="price[@type='pln']"/>

将 return 3200.

要显示所有价格,您可以这样:

<xsl:for-each select="price">
    <p>
        <xsl:text>Price: </xsl:text>
        <xsl:value-of select="."/>
        <xsl:text> </xsl:text>
        <xsl:value-of select="@type"/>
    </p>
</xsl:for-each>

获得: