xslt - 如何枚举 XSL 1.0 中排序的记录?

标签 xslt

抱歉我的英语不好。

如何枚举 XSL 1.0 中的排序记录? 我的代码片段:

...
<tbody>
  <xsl:for-each select="/doc:resources/doc:record">
    <xsl:sort select="@id"/>
    <xsl:choose>
      <xsl:when test="(position() mod 2) = 0">
        <tr bgcolor="#C0C0C0">
          <td>
            <xsl:number format="1"/>
          </td>
          <td>
            <xsl:value-of select="@id"/>
          </td>
          <td>
            <xsl:value-of select="."/>
          </td>
        </tr>
      </xsl:when>
      <xsl:otherwise>
        <tr>
          <td>
            <xsl:number format="1"/>
          </td>
          <td>
            <xsl:value-of select="@id"/>
          </td>
          <td>
            <xsl:value-of select="."/>
          </td>
        </tr>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:for-each>
</tbody>
...

结果屏幕不正确:

http://imglink.ru/pictures/01-04-12/92605b06b8b2c2670bba868c61288e9b.jpg

问候

最佳答案

<xsl:for-each select="/doc:resources/doc:record">
  <xsl:sort select="@id"/>
  <tr>
    <xsl:if test="position() mod 2 = 0">
      <xsl:attribute name="bgcolor">#C0C0C0</xsl:attribute>
    </xsl:if> 
    <td>
      <xsl:value-of select="position()" />
    </td>
    <td>
      <xsl:value-of select="@id"/>
    </td>
    <td>
      <xsl:value-of select="."/>
    </td>
  </tr>
</xsl:for-each>

关于xslt - 如何枚举 XSL 1.0 中排序的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9963766/

相关文章:

java外部函数调用saxon 9.9he xslt

c# - 我如何遍历 XPathNodeIterator 并随机化它的 child ?

xslt - 当测试卡在无限循环中时

c++ - 如何检索非终止 xsl :message in MSXML6 and C++/Delphi?

xml - 使用 XSLT 从 XML 中写入数据列与 Excel 中的行

xslt - XPATH是否有任何类似SQL“IN”的内容?

xslt - 合并多个 xslt 样式表

java - 使用 DOMResult 进行 XML 转换

javascript - xsl :include not working from a Firefox extension

java - Java中如何使用节点属性值读取、更新和删除现有的XML文件