Avatar billede knownothow Nybegynder
24. august 2004 - 20:47 Der er 1 kommentar og
2 løsninger

Sortering via XSL-parameter

Hej,

Jeg har uden held forsøgt at lave et XSL-dokument, der sorterer data pba. parameter/variabel.
Hvordan opbygger jeg sort select dynamisk ?

-- XML --
<?xml version="1.0" encoding="ISO8859-1" ?>
<?xml:stylesheet type="text/xsl" href="./Data1.xsl" ?>
<root>
    <RowHeader>
        <ID>1</ID>
        <VALUE>Frekvens1</VALUE>
    </RowHeader>
    <RowHeader>
        <ID>2</ID>
        <VALUE>Frekvens2</VALUE>
    </RowHeader>
    <RowHeader>
        <ID>3</ID>
        <VALUE>Frekvens3</VALUE>
    </RowHeader>
    <ROWS>
        <ROW rowid="1" value1="1" value2="2" value3="3"/>
        <ROW rowid="2" value1="4" value2="4" value3="2"/>
        <ROW rowid="3" value1="3" value2="3" value3="3"/>
    </ROWS>
</root>

-- Uddrag data1.XSL ---

.
.
<xsl:param name="SortField" select="@value1"/>
<xsl:param name="SortOrder" select="descending"/>
.
.
<xsl:for-each select="root/ROWS/ROW">

<!-- har forsoegt sortering med foelgende uden held: -->
<!-- <xsl:sort select="*/[name()=$SortField]" order="{$SortOrder}" data-type="number" /> -->
<!-- hvorimod nedenstaaende synes at virke -->
<xsl:sort select="@value1" order="{$SortOrder}" data-type="number" />
..
.
</xsl:for-each>
Avatar billede Slettet bruger
24. august 2004 - 23:37 #1
Jeg kan ikke huske om det er muligt at bestemme order vha. en parameter, men hvis det er muligt, skal du ihvertfald definere dine parametre sådan her:

<xsl:param name="SortField" select="'value1'" />
<xsl:param name="SortOrder" select="'descending'" />

- og så benytte flg. <sort> :

<xsl:sort select="@*[name() = $SortField]" order="{$SortOrder}" data-type="number" />

- men så vidt jeg husker kan parametre/variabler (eller dvs. "attribute-value templates" som krølleparenteserne er) ikke benyttes i sort-elementet.

/CS
Avatar billede knownothow Nybegynder
25. august 2004 - 00:07 #2
Tak for hjælpen - der er ikke noget bedre end et par manglende gnyffer :)

/'en var selvfølgelig en fejl - fuld point herfra

/HW
Avatar billede knownothow Nybegynder
25. august 2004 - 10:49 #3
Hvordan gives point ? - jeg er ny på sitet.
Har prøvet Accepter op til flere gange...
Nu prøver jeg denne variant Svar/Accept:)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester