|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: sort and order xml data according to what user sel
OK, that makes sense. But how do I use the xsl:variable/xsl:param element to
capture either $order from the menu or $sortByField from the radio button in
the form?
----- Original Message -----
From: "Lars Huttar" <lars_huttar@xxxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Saturday, July 19, 2003 12:51 AM
Subject: RE: sort and order xml data according to what user selects
from a form
> This FAQ item
> http://www.dpawson.co.uk/xsl/sect2/N6461.html#d6859e950
> tells how to set the sort order dynamically.
> In brief, something like
> <xsl:sort order="{$order}" select="*[name()=$sortByField]"/>
>
> This says "sort elements by their child element whose name
> is the value of $sortByField".
> So if $sortByField = 'size', you will be sorting publication elements
> by the value of their size element child.
>
> Let us know if you try this and are still stuck...
>
> Lars
>
> > -----Original Message-----
> > From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of Sergey
> > Demidenko
> > Sent: Friday, July 18, 2003 8:37 PM
> > To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx
> > Subject: sort and order xml data according to what user selects
> > from a form
> >
> >
> > I want to be able to sort and order my XML data according to
> > what the user
> > selects from a form.
> > I am quite a novice to XSL and haven't worked with forms that
> > much at all.
> > So, when the user selects "size" from the menu, the XML data
> > would be sorted
> > by "size"
> > and when the user selects the ascending radio button, I want
> > the XML data
> > order by "ascending"
> > How would I acomplish this?
> >
> > here is the code that I have:
> > ---------------------------------------------------------------------
> > <?xml version="1.0" encoding="ISO-8859-1"?>
> > <xsl:stylesheet version="1.0"
> > xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
> > <xsl:template match="/">
> > <html><body>
> >
> > <form id="form" method="post" action="">
> > Sort by:
> > <select id="sortby">
> > <option selected="selected">title</option>
> > <option>author</option>
> > <option>date</option>
> > <option>citation</option>
> > <option>pages</option>
> > <option>size</option>
> > </select>
> > Order of:
> > <input id="descending" name="sortorder" type="radio"
> > value="descending"
> > checked="checked" />
> > <label for="descending">Descending</label>
> > <input id="ascending" name="sortorder" type="radio"
> > value="ascending" />
> > <label for="ascending">Ascending</label>
> > </form>
> >
> > <xsl:for-each select="catalog/publication">
> > <xsl:sort select="date" order="descending" />
> > ...
> > here where the xml data is displayed
> > ...
> > </xsl:for-each>
> >
> > </body></html>
> > </xsl:template>
> > </xsl:stylesheet>
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








