Subject: Re: [xsl] Alternating Odd and Even with a twist From: Kuhns Matt <kuhns_m@xxxxxxxxx> Date: Fri, 18 Oct 2002 06:57:30 -0700 (PDT) |
Kuhns Matt wrote: > I want to alternate rows between a odd and even class > in my CSS. The twist is that If there is no > information in the tag I don't want to print and I > want to maintain my odd and even structure. The html > would look like this > <class="rowodd">Hi</class> > <class="roweven">How are you?</class> > <class="rowodd">Bye</class> > xml: > <item1>Hi</item1> > <item2>How are you?</item2> > <item3>Bye</item3> > but say there was no information where How are you? > I want it to go: > <class="rowodd">Hi</class> > <class="roweven">Bye</class> > xml: > <item1>Hi</item1> > <item3>Bye</item3> > I can get the text not to print, but how do I assign > the classes? I hope your elements are *not* named item1, item2, item3... But if you really want: <xsl:for-each select="*[substring(name(),1,4)='item']"> <class> <xsl:choose> <xsl:when test="position() mod 2 = 0"> <xsl:attribute name="name">even</xsl:attribute> </xsl:when> <xsl:otherwise> <xsl:attribute name="name">odd</xsl:attribute> </xsl:otherwise> </xsl:choose> <xsl:apply-templates/> </class> </xsl:for-each> (Beware: untested) I'm not sure what the "twist" is, it's a standard technique. J.Pietschmann I'm sorry my description was a little misleading: <System> <Network>Hi</Network> <Client>How are you?</Client> <Server>Bye</Server> <System> So you couldn't parse the string and get the string "item" __________________________________________________ Do you Yahoo!? Faith Hill - Exclusive Performances, Videos & More http://faith.yahoo.com XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Alternating Odd and Even , J.Pietschmann | Thread | Re: [xsl] Alternating Odd and Even , Joerg Heinicke |
Re: [xsl] Requested review, xml 2 j, Nathan Shaw | Date | Re: [xsl] what could select="self:n, David Carlisle |
Month |