<td class="contact">
<a>
<xsl:attribute name="href"><xsl:value-of
select="contact/email"/></xsl:attribute>
<xsl:value-of select="contact/email"/>
</a>
</td>
If you want to list all your contacts, you can do something like:
<xsl:apply-templates select="contact"/>
<xsl:template match="contact">
<tr>
<td><xsl:value-of select="name"/><td>
<td class="contact">
<a>
<xsl:attribute name="href"><xsl:value-of
select="email"/></xsl:attribute>
<xsl:value-of select="email"/>
</a>
</td>
</tr>
</xsl:template>
(this of course assumes you also have a node called "name" in your
contacts.)
There are probably some ways to shorten this, but thats the gist of it.
It took me a while to catch on to it, but when you get it, it becomes
very intuitive, so stick with the xsl.
Mike
Steve Salkin wrote:
Hi-
I'm just getting my feet wet in XSL and it's pretty interesting. I think
I am missing something though, because I find myself needing xsl:text
more than I think I really ought to. For example, if I have XML
<contact>
<email>xxx(_at_)email(_dot_)com</email>
</contact>
and I want to generate a mailto URI like this:
<a href="xxx(_at_)email(_dot_)com>xxx(_at_)email(_dot_)com</a>
the only thing I can get to work well is something like
<td class="contact">
<xsl:text disable-output-escaping="yes">
<a href= "mailto:
</xsl:text>
<xsl:value-of select="contact/email"/>
<xsl:text disable-output-escaping="yes">
">
</xsl:text>
<xsl:value-of select="contact/email"/>
<xsl:text disable-output-escaping="yes">
</a>
</xsl:text>
</td>
because the need for quotes after the "href=" confuses everything (Then
I have to hide the '<' because it gets upset when it sees <a href= with
no quotes following). I'm sure that there's a more elegant solution than
this relatively ugly one. I did try using an <xsl:variable> but I just
get $email in the output. Any takers?
S-
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list