Subject: Re: finding the last element with attribute
From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx>
Date: Mon, 19 Feb 2007 21:52:34 +0530
|
On 2/19/07, Robert Walpole <robert.walpole@xxxxxxxxxxxx> wrote:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:template match="/">
<xsl:for-each select="areaserved/district/option">
<xsl:if test="./@selected = 'selected'">
<xsl:value-of select="."/>
<xsl:if test="position() != last()">, </xsl:if>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
I believe, Andrew's suggestion would work for you. The error in above
logic is - position() & last() are referring to 'position' and 'last'
of node-set formed by areaserved/district/option, and not
areaserved/district/option[@selected = 'selected'] (as Andrew just
pointed).
--
Regards,
Mukul Gandhi
|