Subject: RE: [xsl] displaying sql results in dropdown menus From: "Andrew Welch" <ajwelch@xxxxxxxxxxxxxxx> Date: Thu, 19 Aug 2004 09:57:28 +0100 |
> I'm trying to get dropdown menus of values from a xml file, which is > the result of a SQL request: > > <td>Collection</td> > > // here I caught the names of the request's attributes > > <idattr>sql:id_collection</idattr> > <idattr>sql:libelle_collection</idattr> > > <td> > <rowset xmlns="http://apache.org/cocoon/SQL/2.0" > nrofrows="12"> > <row> > <id_collection>1</id_collection> > <libelle_collection>CIP</libelle_collection> > </row> > <row> > <id_collection>2</id_collection> > > <libelle_collection>Champignons</libelle_collection> > </row> > <row> > <id_collection>3</id_collection> > <libelle_collection>IEBC</libelle_collection> > </row> > > </rowset> > </td> > > > I modified the XSL file page2html.xsl in the following way: > > (I don't directly put the attributes' id s in the xsl because > I want a > generalized file, > which could work for any request' s result) > > <xsl:template match="sql:rowset"> > > // I catch the attributes' ids in xsl variables > > <xsl:variable name="idattr1" select="../../idattr[1]"/> > <xsl:variable name="idattr2" select="../../idattr[2]"/> > > <select size="1" name=""> > <option value="-1">- Silectionnez :</option> > > > // And I try to get their values in a dropdown list > > <xsl:for-each select="sql:row"> > <option value= "$idattr1"> > <xsl:value-of select="$idattr2"/> > </option> > </xsl:for-each> > </select> > > ... > All I manage to obtain is : > > <td>Collection</td> > <td> > <select name="" size="1"> > <option value="-1">- Silectionnez :</option> > <option value="$idattr1">sql:libelle_collection</option> > <option value="$idattr1">sql:libelle_collection</option> > <option value="$idattr1">sql:libelle_collection</option> > </select></td> > > instead of the dropdown list with the values INSIDE the " > libelle_collection" tags... > Perhaps it is a problem with Cocoon's SQL Transformer... > > Has anybody a clue? Try: <xsl:value-of select="*[name() = $idattr2]"/> ...as you are trying to access the value of the node with the name 'sql:libelle_collection'. cheers andrew
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Speed: xsl with xml vs. h, M. David Peterson | Thread | RE: [xsl] displaying sql results in, Vasu Chakkera |
Re: [xsl] displaying sql results in, Jeni Tennison | Date | RE: [xsl] Calling templates based o, Ben Gazzard |
Month |