Thomas J.S.: Erkennen des letzen Artikels

Beitrag lesen

Hallo,

Leider unterliegt dem Coding ein kleiner Verständnisfehler.

Ich hab ihn mal umgeschrieben:

<xsl:if test="position() = last()">
                          <div class="screenonly">
                            <p class="backtotop" align="right">
                              <a href="#top">Back to top</a>
                            </p>
                          </div>

<hr noshade="noshade" />
                        </xsl:if>
                      </xsl:for-each>
                    </xsl:if>

Der Newsletter besteht ja aus mehreren solcher <if> Container. Jedoch soll es möglich sein, dass im letzten <if> Container die horinzontale Linie ( <hr noshade="noshade" /> ) nicht angezeigt wird. Das <div class="screenonly"> Element jedoch schon.

Wie bekomme ich das in den Griff?

Du meinst also:
1. if: <xsl:if test="Article/testelement[. = 'UPE']">
in diesem soll immer sreenonly und <hr> angezeigt werden
2. if: <xsl:if test="Article/testelement[. = 'DU']">
auch in diesem soll immer sreenonly und <hr> angezeigt werden
...
x. if: ....
in diesem soll zwar screenonly aber nicht <hr> angezeigt werden.

Dann muss du die pos=last Abfrage nur in dem letzen if einfügen.

Wenn ich das jetzt falsch verstanden habe:
statt <xsl:if test="position() = last()"> ein choose-when test=position() = last()" einfügen darin den, was angezeigt werden soll und im otherwise das, was eben im anderen Fall da stehen soll.

Grüße
Thomas