Subject: Re: [xsl] parent and .. From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Tue, 19 Mar 2002 09:42:47 +0000 |
Hi Matts, > Output is '111'. Same result when select="parent::node()/cell/@pos" > and select="../cell/@pos". But how do i get '123'? In your code, you process each cell element in turn. For each cell, you get the value of it's parent (row) element's child cell element's pos attribute. There are several such pos attributes, and when you select lots of nodes for xsl:value-of, it only gives you the value of the first one. So you get the first pos attribute over and over again. It sounds, though, as if you want the pos attribute *of the cell you're on*. That being the case, there's no need to go up to any parent, because you're already on the node that's holds the relevant attribute. So you can just do: <xsl:for-each select="row/cell"> <xsl:value-of select="@pos"/> </xsl:for-each> If you were selecting the *data* elements instead, then you'd need to go up to the parent cell and then to its pos attribute: <xsl:for-each select="row/cell/data"> <xsl:value-of select="../@pos" /> </xsl:for-each> or: <xsl:for-each select="row/cell/data"> <xsl:value-of select="parent::cell/@pos" /> </xsl:for-each> Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] parent and .., David Carlisle | Thread | Re: [xsl] parent and .., Matts Isuls |
Re: [xsl] parent and .., David Carlisle | Date | Re: [xsl] parent and .., Matts Isuls |
Month |