Hi,
That's right :-)
Your last element with "<xsl:if test="./@selected = 'selected'">" equal
to true is the only one element with "selected": "<option
selected="selected" >Exeter</option>". If u put into other elements
"selected" attribute with "selected" value, the result will be
different.
BR,
Plamen Kirov
-----Original Message-----
From: Robert Walpole
[mailto:robert(_dot_)walpole(_at_)devon(_dot_)gov(_dot_)uk]
Sent: Monday, February 19, 2007 4:39 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] finding the last element with attribute
Hi,
I am stuck on a small but annoying problem. I have broken it down into
a
couple of test files, the xml as follows...
<?xml version="1.0" encoding="UTF-8"?>
<areaserved>
<district>
<option>East Devon</option>
<option selected="selected" >Exeter</option>
<option>Torbay</option>
</district>
</areaserved>
..and the xslt as follows...
<?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>
Basically, in the xml any of the option elements can have a "selected"
attribute with a "selected" value. When I transform the xml I only
want
to put out a comma if it is not the last option with a
selected="selected" attribute. At the moment it always puts out a
comma
unless it is actually the last option (i.e. Torbay). So with the xml
file as it is it will put out "Exeter,"
Thanks
Rob Walpole
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--