Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.137.187.233] |
|
Сообщ.
#1
,
|
|
|
Дали задание написать xsl template. В образце четные и нечетные строки имеют разный бэкграунд.
Можно ли средствами XSLT определить, является ли элемент списка (<xsl:for-each select= ...) четным или нечетным? Добавить новый тег к xml файлу не могу. |
Сообщ.
#2
,
|
|
|
Ченить типа такого:
<xsl:choose> <xsl:when test="count() mod 2 = 0"> <td bgcolor="#ff00ff"><xsl:value-of select="..."/></td> </xsl:when> <xsl:otherwise> <td bgcolor="#0000ff"><xsl:value-of select="..."/></td> </xsl:otherwise> </xsl:choose> |
Сообщ.
#3
,
|
|
|
Ну. например так:
... <xsl:for-each select="tr"> <tr> <xsl:if test="count(preceding-sibling::*) mod 2 = 0"> <xsl:attribute name="style"> <xsl:text>background-color:silver</xsl:text> </xsl:attribute> </xsl:if> <td><xsl:value-of select="td" /></td> </tr> </xsl:for-each> ... |
Сообщ.
#4
,
|
|
|
Нашел ответ. Надо использовать функцию position:
<xsl:choose> <xsl:when test="position() mod 2 = 0"> ... </xsl:when> <xsl:otherwise> ... </xsl:otherwise> </xsl:choose> |