Avatar billede reb Nybegynder
19. maj 2004 - 10:10 Der er 8 kommentarer og
1 løsning

Problem med variable i xlst.

Hej alle.

Jeg har et lille XML-problem, som jeg håber at det er passende at poste
herinde.


Jeg har følgende sætning, som skal give mig værdien fra mit XML-ark
tilhørende elementet <Starttid>, men jeg skal kun have værdien hvor ProID er
lig med en værdi, som jeg har defineret i en variabel(i). Problemet er
bare, at denne sætning ikke er velformet, men hvordan får jeg så indsat
værdien af (i) i min vælger ??

<xsl:value-of select="//Starttid[ProID=<xsl:value-of select="$i" />]"/>

Er der nogen der kan hjælpe mig ??

Mvh

Rene´ Bjørngaard
----------------------------------------------------------

Sådan her ser et udsnit af mit XML-ark:

<Programplan>
    <ProID>1</ProID>
    <Programtitel>Morgenradio</Programtitel>
    <Starttid>06:00</Starttid>
  </Programplan>

  <Programplan>
    <ProID>2</ProID>
    <Programtitel>Musik uden snak</Programtitel>
    <Starttid>09:00</Starttid>
  </Programplan>
Avatar billede atoft Nybegynder
19. maj 2004 - 10:12 #1
Prøv med

<xsl:value-of select="//Starttid[ProID=$i]"/>

i stedet for

<xsl:value-of select="//Starttid[ProID=<xsl:value-of select="$i" />]"/>
Avatar billede reb Nybegynder
19. maj 2004 - 10:20 #2
Tak for hjælpen. Den burde jeg da vidst selv have set :-) men tak alligevel!!
Avatar billede atoft Nybegynder
19. maj 2004 - 10:41 #3
Ja 30 points er vel i overkanten.
Avatar billede reb Nybegynder
19. maj 2004 - 10:49 #4
Jamen, hvis det er det, så kan du jo lige hjælpe en gang til U/B :-))

Det virke nemlig ikke helt, som jeg vil.

Hvis jeg fjerner firkantparetesen i den sætning du lavede, så tager min kode bare den første værdi af <Starttid>, men når jeg kun skal bruge værdien af <Starttid>, når <ProID> svarer til en bestemt værdi, så virker det ikke. Kan du forklare hvorfor ??

Jeg kan sagtens bare udskrive værdien af varialbe, lige inden omtalte sætning, og den ændre sig også i forhold til det den skal.

Som jeg ser det, så kommer værdien af (i) ikke ordentligt ind i sætningen, eller også kan sætningen ikke komme ind til elementet <ProID>.


Mvh
Rene´
Avatar billede atoft Nybegynder
19. maj 2004 - 11:02 #5
Det forstår jeg godt.

Det skal være

<xsl:value-of select="//Programplan[ProID=$i]/Starttid"/>
Avatar billede atoft Nybegynder
19. maj 2004 - 11:03 #6
min fejl
Avatar billede reb Nybegynder
19. maj 2004 - 11:05 #7
Tak det virkede med det samme...
Avatar billede reb Nybegynder
19. maj 2004 - 11:29 #8
Hej igen. Har lige en ting mere i samme kategori. Du må sige til, hvis jeg skal smide flere point efter dig, for det gør jeg gerne for dine hurtige og brugbare svar.

I sammenhæng med ovenstående, skal jeg også have udskrevet en attribut til et element <Dag>, som ikke var vist på XML-arket tidligere, men som også hører til hvor <ProID> er = min variabel.

Jeg har prøvet med

<xsl:value-of select="//Dag/Programplan[ProID=$i]/@Ugedag"/>
Men der sker intet ved denne.

Her er et størrer udsnit af XML-ark:

<Dag Ugedag="Mandag">
            <Programplan>
                <Starttid>06:00</Starttid>
                <ProID>1</ProID>
                <Programtitel>Morgenradio</Programtitel>
               
            </Programplan>
       
            <Programplan>
                <Starttid>09:00</Starttid>
                <ProID>2</ProID>
                <Programtitel>Musik uden snak</Programtitel>
               
            </Programplan>

            <Programplan>
                <Starttid>10:00</Starttid>
                <ProID>3</ProID>
                <Programtitel>Formiddagskanalen</Programtitel>
               
            </Programplan>
        </Dag>
Avatar billede reb Nybegynder
08. juni 2004 - 21:50 #9
lukket.
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