Subject: Re: [xsl] Insert a tag inside a text From: knocte <knocte@xxxxxxxxx> Date: Mon, 12 Sep 2005 17:01:17 +0200 |
2005/9/12, Joris Gillis <roac@xxxxxxxxxx>: > Hi, > On Mon, 12 Sep 2005 15:10:46 +0200, knocte <knocte@xxxxxxxxx> wrote: > > > I am trying to figure out if it is possible to make a XSLT > > transformation which could receive this XML file: > > > > <page> > > <p> > > <label for="txtElement" accesskey="a"> > > Name: > > </label> > > <input type="text" id="txtElement" /> > > </p> > > </page> > > > > > > And transform it to the following, inserting a <span> tag inside a > > specific position of a string: > > > > <html> > > <head><title></title></head> > > <body> > > <p> > > <label for="txtElement" accesskey="a"> > > N<span class="accesskey">a</span>me: > > </label> > > <input type="text" id="txtElement" /> > > </p> > > </body> > > </html> > > > > Is this possible? > > Absolutely, > > Here's a working example solution: > > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:output method="xml" indent="yes"/> > <xsl:strip-space elements="*"/> > > <xsl:variable name="version" select="/xsl:stylesheet/@version"/> > > <xsl:template match="/"> > <html> > <head><title></title></head> > <xsl:apply-templates/> > </html> > </xsl:template> > > <xsl:template match="page"> > <body><xsl:apply-templates/></body> > </xsl:template> > > <xsl:template match="node()|@*"> > <xsl:copy> > <xsl:apply-templates select="node()|@*"/> > </xsl:copy> > </xsl:template> > > <xsl:template match="*[@accesskey]/text()[contains(.,../@accesskey)]"> > <xsl:value-of select="substring-before(.,../@accesskey)"/> > <span class="accesskey"><xsl:value-of select="../@accesskey"/></span> > <xsl:value-of select="substring-after(.,../@accesskey)"/> > </xsl:template> > > </xsl:stylesheet> > Thanks!! It works flawlessly. Andrew [ knocte ] --
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Insert a tag inside a tex, Joris Gillis | Thread | [xsl] QUESTION, Juan Pablo Rojas Tov |
Re: [xsl] Traversing the tree, Agnisys Technology \ | Date | [xsl] Using a template to transform, Emerson, Matt |
Month |