This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re[2]: xsl:variable {RE: XSL to handle display mutiple pages}
- To: "Xu, Xiaocun" <XXu at CommercialWare dot com>
- Subject: Re[2]: xsl:variable {RE: XSL to handle display mutiple pages}
- From: Jeni Tennison <mail at jenitennison dot com>
- Date: Wed, 8 Nov 2000 10:49:18 +0000
- CC: "'xsl-list at mulberrytech dot com '" <xsl-list at mulberrytech dot com>
- Organization: Jeni Tennison Consulting Ltd
- References: <616CF07CA58CD311A519000629383B059C2B33@cwiex2.commercialware.com>
- Reply-To: xsl-list at mulberrytech dot com
Xiaocun,
> This is related to the pagination problem I had earlier. Since my first
> page has header, it can only contain 50 lines, while the latter page can
> contain 60 lines. So I want to set $maxItemsPage to be 50 for the first
> page, and 60 for the following pages.
>
> What is the easier way to achieve this?
Have two parameters:
<xsl:param name="maxItemsFirstPage" select="50" />
<xsl:param name="maxItemsOtherPages" select="60" />
and choose which of those values to use according to which page you're
generating. I forget whether you're generating the pages all at once
or different ones with each process, but if the latter you could use a
global variable, for example:
<xsl:param name="current-page" select="3" />
<xsl:variable name="maxItemsPage">
<xsl:choose>
<xsl:when test="$current-page = 1">
<xsl:value-of select="$maxItemsFirstPage" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$maxItemsOtherPages" />
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
I hope that helps,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list