xsl-list
[Top] [All Lists]

Problem With Different Colors for Alternate Rows

2002-10-31 08:52:59
All,

I am having difficulty programming a stylesheet that is supposed to return the 
result set as a list of HTML rows in alternating colors.All of the examples 
that I have seen address how to do this if every data row is is derived from 
the same type of XML tag. But in my example, each row may come from a 
completely different section of the XML. Following is a sample XML similar to 
the one that I am using. Also, another constraint is if any row is missing, it 
is inhibited, and the alternating color rule must still be preserved. I have 
tried numerous ways of passing parameters, but have been unable to modify the 
the row count after a match was found ofr each item. Any help would be GREATLY 
appreciated.

Sample XML:

<Food_List>
<Main_Food_List>
<Main_Course>
Chicken
</Main_Course>
</Main_Food_List>
<Side_Dish>
Potatoes
</Side_Dish>
<Desert>
<Fancy_Desert>
Chocolate Truffles
</Fancy_Desert>
</Desert>
</Food_List>

Sample XSLT Stylesheet:
<?xml version="1.0" ?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' >
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<xsl:apply-templates select="Food_List/Main_Food_List/Main_Course"/>
<xsl:apply-templates select="Food_List/Side_Dish"/>
<xsl:apply-templates select="Food_List/Desert/Fancy_Desert"/>

<xsl:template match="Main_Course">
<TR><TD>Main Course:</TD><TD xsl:value-of select="."/></TD></TR>
</xsl:template>

<xsl:template match="Side_Dish">
<TR><TD>Side Dish:</TD><TD xsl:value-of select="."/></TD></TR>
</xsl:template>

<xsl:template match="Fancy_Desert">
<TR><TD>Desert:</TD><TD xsl:value-of select="."/></TD></TR>
</xsl:template>

</xsl:stylesheet>



Required HTML Output
<TABLE>
<TR><TD colspan="2">MENU</TD></TR>
<TR><TD class="oddRowStyle">Main Dish:</TD><TD 
class="oddRowStyle">Chicken</TD></TR>
<TR><TD class="evenRowStyle">Side Dish:</TD><TD 
class="oddRowStyle">Potatoes</TD></TR>
<TR><TD class="oddRowStyle">Desert:</TD><TD class="oddRowStyle">Chocolate 
Truffles</TR>
</TABLE>





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



<Prev in Thread] Current Thread [Next in Thread>