XSL показывает только 10 циклов для каждого - PullRequest
6 голосов
/ 10 декабря 2010

В моем XML 100 узлов AgentSales. Я хочу показать только первые 10, пока у меня есть

<xsl:for-each select="NewDataSet/AgentSales">
    <tr>
        <xsl:if test="(position() mod 2 = 1)">
            <xsl:attribute name="bgcolor">#cccccc</xsl:attribute>
        </xsl:if>
        <td>
            <span style="font:20px arial; font-weight:bold;">
                <xsl:value-of select="AgentName"/>
            </span>
        </td>
        <td>
            <span style="font:20px arial; font-weight:bold;">
                <xsl:value-of select="State"/>
            </span>
        </td>
        <td>
            <span style="font:20px arial; font-weight:bold;">
                <xsl:value-of select="time"/>
            </span>
        </td>
    </tr>
</xsl:for-each>

Впервые на сайте, но когда я использую скобки кода, не весь мой код показывает?по крайней мере, в предварительном просмотре ниже.

Ответы [ 2 ]

7 голосов
/ 10 декабря 2010

Использование :

<xsl:for-each select="NewDataSet/AgentSales[not(position() >10)]">
  <!-- Process each node from the node-list -->
</xsl:for-each>

Еще лучше :

<xsl:apply-templates select="NewDataSet/AgentSales[not(position() >10)]"/>
2 голосов
/ 10 декабря 2010

Попробуйте что-то вроде:

<xsl:for-each select="NewDataSet/AgentSales">
    <xsl:if test="position() &lt;= 10">
        ...
    </xsl:if>
</xsl:for-each>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...