[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Problems displaying xsl:value-of within quotes

Subject: Re: Problems displaying xsl:value-of within quotes
From: Jeni Tennison <Jeni.Tennison@xxxxxxxxxxxxxxxx>
Date: Fri, 16 Jun 2000 15:01:53 +0100
xsl value of in quotes
David,

>I have written the following XSLT to display a list of checkboxes
>
><xsl:for-each select="data">
>
><TD><INPUT TYPE="CHECKBOX" NAME="item1"><xsl:value-of 
>select="@label"/></INPUT></TD>
>
></xsl:for-each>
>
>which is fine, but I want to change the NAME="item1" to NAME="<xsl:value-of 
>select="@name"/>" but this does not work.

There are two ways to do what you want to do, one of which is a shortening
of the other.  The essential thing you have to realise is that you're
constructing an element tree, not putting together strings to give an HTML
file.  To rephrase your question with this in mind: what you want to do is
create an 'INPUT' element whose 'NAME' attribute is equal to the value of
the 'name' attribute of the current node (the 'data' element).

The first way, which is longer but a bit more flexible, is to use
xsl:attribute, which lets you specify the value of an attribute on a result
element in any way you want within its content:

<xsl:for-each select="data">
  <TD>
    <INPUT TYPE="CHECKBOX">
      <xsl:attribute name="NAME">
        <xsl:value-of select="@name" />
      </xsl:attribute>
      <xsl:value-of select="@label" />
    </INPUT>
  </TD>
</xsl:for-each>

The second way, which is shorter, but less flexible, is to use an
'attribute-value-template'.  Basically, if you place an XPath (like @name)
within {}s in an attribute value, then the XPath is evaluated to give the
value for the attribute:

<xsl:for-each select="data">
  <TD>
    <INPUT TYPE="CHECKBOX" NAME="{@name}">
      <xsl:value-of select="@label" />
    </INPUT>
  </TD>
</xsl:for-each>

I hope that helps,

Jeni

Dr Jeni Tennison
Epistemics Ltd, Strelley Hall, Nottingham, NG8 6PE
Telephone 0115 9061301 ? Fax 0115 9061304 ? Email
jeni.tennison@xxxxxxxxxxxxxxxx



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.