Для xslt-1.0, как изменить код ниже, чтобы добавить third
класс к первым, четвертому, seveth и т.д. Элементам inner-div
?
<div id="myDiv">
<xsl:for-each select="key('category', $var1)">
<div class="inner-div">
sometext
</div>
</xsl:for-each>
</div>
так что, это:
<div id="myDiv">
<div class="inner-div third">
sometext
</div>
<div class="inner-div">
sometext
</div>
<div class="inner-div">
sometext
</div>
<div class="inner-div third">
sometext
</div>
<div class="inner-div">
sometext
</div>
<div class="inner-div">
sometext
</div>
<div class="inner-div third">
sometext
</div>
</div>
Спасибо.
Вы должны выполнить арифметику по модулю в position()
:
<div id="myDiv">
<xsl:for-each select="key('category', $var1)">
<div>
<xsl:attribute name="class">
<xsl:text>inner-div</xsl:text>
<xsl:if test="(position() mod 3) = 1"> third</xsl:if>
</xsl:attribute>
sometext
</div>
</xsl:for-each>
</div>