But when I do this I get a dropdown box for each child.
if you do an apply-templates or for-each over a set of nodes that
generates a <select elemnt for each one, then cearly you will get that
many select elements.
just take the <select> out of your template and stick it round the call,
so you only generate one.
<select id="'subDepartments'"
name="'subDepartments'">
<xsl:apply-templates mode="select"
match="document('Definitions.xml')/root/department/subDepartment[not(@ignore)]"
<xsl:with-param name="id" select="'subDepartments'" />
</xsl:apply-templates>
<xsl:for-each select="../node()">
<option>
<xsl:if
test=".=$selected">
looks very suspicious at the point of the if . is the parent node of the
node matched by the template and they you compare its string value with
$selected, the string value of the parent is the concatenation of all
the character data of all the parents's descendants.
David
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________
--~------------------------------------------------------------------
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>
--~--