Subject: RE: [xsl] RE: XSL-List Digest V4 #1168 From: "Conal Tuohy" <conalt@xxxxxxxxxxxxxxx> Date: Thu, 20 Mar 2003 12:56:10 +1200 |
Walter Crockett wrote: > I'm updating an old stylesheet that still works, but it calls > xmlns:xsl="http://www.w3.org/TR/WD-xsl" instead of the modern version. > > This seems to prevent me from using simple functions like position(). > > When I change to http://www.w3.org/1999/XSL/Transform, it > breaks because it > uses the now-defunct xsl:eval. > > <xsl:if test="@Level"> > <xsl:eval>makeTreePath(this)</xsl:eval> > </xsl:if> > > It needs this to make a nice tree in HTML: > > <xsl:script> > <![CDATA[ > function makeTreePath(e) > { > var depthChar="|---"; > var result=""; > var i; > var j = e.getAttribute("Level"); > > for(i = 0;i < j;i++){ > result += depthChar; > } > > return result; > } > ]]> > </xsl:script> This is a FAQ: http://www.dpawson.co.uk/xsl/sect2/repetition.html Replace the javascript function with a named template like this: <xsl:template name="makeTreePath"> <xsl:param name="n"/> <xsl:if test="number($n) > 0"> <xsl:text>|---</xsl:text> <xsl:call-template name="makeTreePath"> <xsl:with-param name="n" select="number($n) - 1"/> </xsl:call-template> </xsl:if> </xsl:template> and call it like this: <xsl:if test="@Level"> <xsl:call-template name="makeTreePath"> <xsl:with-param name="n" select="@Level"/> </xsl:call-template> </xsl:if> Cheers! Con XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] RE: XSL-List Digest V4 #1168, walter . crockett | Thread | RE: RE: [xsl] what does, cknell |
Re: [xsl] use of xsl:key in cross-r, Xiaocun Xu | Date | Re: [xsl] matching when the attribu, Carl Yu |
Month |