什么的XPath从表中选择的TR奇,首先是第三?(What XPath selects odd TR

2019-09-17 14:56发布

我有一个表:

<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>

我需要一个XPath来选择奇数行,开始的第三行(3,5,7,9,等等)。

Answer 1:

我认为XPATH的“位置()函数将做的工作。 返回当前正在处理的节点的索引位置。 你需要做的位置()模2。

这里是XSLT解决方案

<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>


Answer 2:

"/table/tr[position() mod 2 = 1 and position() > 1]"


文章来源: What XPath selects odd TRs from a table, starting with the third?
标签: dom xpath xhtml