In the same project as before, my search results are being presented in a table. The issue here, is that I want to have a different background colour for an alternate for the purpose of easy readability.
Luckily, XSL saves the day with the position() function. This is really handy for obtaining your current index when in a loop. Just as with using any other server side language you want to mod 2 the position to identify the alternate row:
For a quick reminder of the modulus operation (mod): when applying the arithmetic on an even number it, correctly returns 0. When applying to an uneven number, such as 5, it will return the value 1. 1 denotes that there is a remainder.
The purpose of xsl:attribute is to apply XML/XSL to an attribute of a HTML tag. In this case I want to apply a CSS style to the table row (tr), to keep separation of design and content in the resulting HTML.
Luckily, XSL saves the day with the position() function. This is really handy for obtaining your current index when in a loop. Just as with using any other server side language you want to mod 2 the position to identify the alternate row:
<xsl:if test="position() mod 2 ='1'">
<xsl:attribute name="class">rowA</xsl:attribute>
</xsl:if>
For a quick reminder of the modulus operation (mod): when applying the arithmetic on an even number it, correctly returns 0. When applying to an uneven number, such as 5, it will return the value 1. 1 denotes that there is a remainder.
The purpose of xsl:attribute is to apply XML/XSL to an attribute of a HTML tag. In this case I want to apply a CSS style to the table row (tr), to keep separation of design and content in the resulting HTML.
Blogged with Flock
Comments