我是xpath的新手。我想在xslt中使用for-each和if条件提取Age的所有值大于24。
<PriceBooking>
<Guest>
<GuestCount Age="24" Code="10" Quantity="1"/>
<GuestCount Age="26" Code="10" Quantity="1"/>
<GuestCount Age="3" Code="10" Quantity="1"/>
</Guest>
</PriceBooking>
到目前为止,我尝试了以下内容: -
<xsl:for-each select="PriceBooking/Guest">
<xsl:choose>
<xsl:when test="PriceBooking/Guest/GuestCount/@Age > '28'">
<Age><xsl:value-of select="PriceBooking/Guest/GuestCount/@Age"/></Age>
</xsl:when>
<xsl:otherwise>
<Sid>Failed to load</Sid>
</xsl:otherwise>
</xsl:choose>
它总是会另有条件..请帮我解决xpath
答案 0 :(得分:0)
您需要了解for-each
将上下文节点更改为Guest
元素,并且内部需要相对路径,例如。
<xsl:when test="GuestCount/@Age > 28">...</xsl:when>
但您发布的样本的@Age
值为24,26和3,因此条件永远不会为真。