I have a table:
<table>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
<tr><td>3</td></tr>
<tr><td>4</td></tr>
<tr><td>5</td></tr>
<tr><td>6</td></tr>
<tr><td>7</td></tr>
<tr><td>8</td></tr>
<tr><td>9</td></tr>
</table>
I need an XPath to select odd rows, starting on the third row (3, 5, 7, 9, etc.).
"/table/tr[position() mod 2 = 1 and position() > 1]"
I think 'position()' function of XPATH will do the job. Returns the index position of the node that is currently being processed. you need to do position() mod 2.
Here is XSLT solution
<xsl:for-each select="tr">
<xsl:choose>
<xsl:when test="position() mod 2 = 1 and position() > 1">
...do smthng ....
</xsl:when>
<xsl:otherwise>...do something else...</xsl:otherwise>
</xsl:choose>
</xsl:foreach>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With