Subject: Re: get the value from a different child From: Nicola Cubeddu <cubo@xxxxxx> Date: Thu, 04 May 2000 12:56:17 +0100 |
When you call the following line:The solution:<xsl:value-of select="BILLING_ATTRIBUTES[NAME=$myName]"/>
you are asking for the value of the element "BILLING_ATTRIBUTES" which is a
child of the currently selected node.1) There are no "BILLING_ATTRIBUTES" elements anywhere on the tree...
2) The current node is "ATTRIBUTE"
3) The "BILLING_ATTRIBUTE" element in your tree does not have any text()
nodes associated with it.What you want is something like:
<xsl:value-of select="//BILLING_ATTRIBUTE[NAME=$myName]/VALUE/text()"/>
or, to be more precise:
<xsl:value-of select="../BILLING_ATTRIBUTE[NAME=$myName]/VALUE/text()"/>
(the first asking for a BILLING_ATTRIBUTE element anywhere on the tree, the
second specifically asking for a sibling of the current node).By the way, if you are using anything other than IE5's XML parser, you can
use the shorthand:<input type="text" name="{NAME}"
value="{="../BILLING_ATTRIBUTE[NAME=$myName]/VALUE}" />instead of using <xsl:attribute>
Hope this helps,
Ben
<xsl:template match="ATTRIBUTE[PERMISSION='1']">
<TR>
<TD>
<xsl:value-of select="NAME"/>
</TD>
<TD>
<INPUT TYPE="TEXT">
<xsl:attribute name="NAME"><xsl:value-of
select="NAME"/></xsl:attribute>
<xsl:variable name="myName"><xsl:value-of
select="NAME"/></xsl:variable>
<xsl:attribute name="VALUE">
<xsl:value-of select="/LIST/BILLING_ATTRIBUTE[NAME=$myName]/VALUE">
</xsl:attribute>
</INPUT>
...
thanks Benn!
ciao
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: get the value from a different , Ben Robb | Thread | get the value from a different chil, Nicola Cubeddu |
Possible transformiix bug with defa, MarkH | Date | Beware: XSLT Programmers Reference , Etienne Posthumus |
Month |