Re: [xsl] xslt pagnation help...

Subject: Re: [xsl] xslt pagnation help...
From: "Zoe Peng" <zoe@xxxxxxxxxxxx>
Date: Mon, 12 Aug 2002 02:05:50 -0400
Hi Joerg, 
Yes. It's pretty much I need for my stylesheet.
position() 0-4 (on page 0)
position 5-10 (on page 1) 
position 11-15 (on page 2)
The problem: when I click option [More], it needs to link to #card 
which is from page0 to page1 and so on. The statement I use didn't 
perform this functionality. Any suggestions? Thanks in advance.
--Zoe

> I don't know exactly what your problem is, but I would suggest 
merging 
> the both email message types:
> 
> <?xml version="1.0" ?>
> <xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
> version='1.0' >
> <xsl:output doctype-system='http://www.wapforum.org/DTD/wml_1.1.xml'/>
> 
> <!-- declare param -->
> <xsl:param name="Page" select="0" />
> <xsl:param name="PageSize" select="5" />
> 
> <!-- start from here -->
> <xsl:template match="/">
>    <wml>
>      <card id="message">
>        <p>
>          <select name="MAILMSGCONTENT" title="MAILMSGCONTENT">
>            <xsl:apply-templates 
> select="tm_email_client/email_session_config"/>
>            <option onpick="#card">More</option>
>          </select>
>          <a href="#reply">Select</a>
>          <anchor>Back<prev/></anchor>
>       </p>
>    </card>
> </wml>
> </xsl:template>
> 
> <xsl:template match="email_session_config">
>    <xsl:for-each select="( user_email_msgs/email_msg | 
> default_email_msgs/email_msg ) [position() > ($Page * $PageSize)] 
> [position() &lt;= $PageSize]">
>      <option value="{em_msg_subj}">
>        <xsl:value-of select="em_msg_subj"/>
>      </option>
>    </xsl:for-each>
> </xsl:template>
> </xsl:stylesheet>
> 
> Explanation for the for-each statement:
> 
> Select all user_email_msgs/email_msg and all 
> default_email_msgs/email_msg and create a UNION of these both node 
sets 
> (=> 1 node set). From this merged node set select all elements, whose 
> position() is greater than 0 (on page 0) or 5 (on page 1) and so on 
> (first predicate). From the rest (position() is calculated again) 
select 
> all the elements whose position() id less than or equals 5, so 5 
> elements are selected (or less on the last page).
> 
> Does this stylesheet what you want??
> 
> Regards,
> 
> Joerg


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread