Avatar billede dgivoni Nybegynder
22. august 2001 - 09:05 Der er 13 kommentarer og
1 løsning

Fra attribut til attribut

Jeg har lidt problemer med at læse en xml-attribut og levere den til en html-attribut.
Mit xsl-dok ser sådan ud:

<xsl:for-each select=\"webpage/navigation/item\">
  <a href=\"\">
      <xsl:attribute name=\"href\">
        <xsl:value-of select=\".[@url]\"/>
      </xsl:attribute>
      <xsl:value-of select=\".\"/>
  </a>
  <br/>
</xsl:for-each>

Idéen er at løbe alle navigationselementerne igennem og hente den relevante url ud og placere den i anchor-tagget i html. Men jeg får flg. fejl:

msxml3.dll (0x80004005)
Expected token \'eof\' found \'[\'. .-->[<--@url] Error occurred during compilation of included or imported stylesheet \'file:///D:/Website/Timebox1/Skabelon/templatetest.xsl\'.

Nogen idéer til hvad der er galt?
Avatar billede dgivoni Nybegynder
22. august 2001 - 09:09 #1
Det skal måske lige nævnes at jeg samler xml og xsl i et asp-script inden det returneres til klienten som html.
Avatar billede getalife Nybegynder
22. august 2001 - 09:20 #2
<xsl:for-each select=\"webpage/navigation/item\">
  <a>
      <xsl:attribute name=\"href\">
        <xsl:value-of select=\".[@url]\"/>
      </xsl:attribute>
      <xsl:value-of select=\".\"/>
  </a>
  <br/>
</xsl:for-each>
Avatar billede getalife Nybegynder
22. august 2001 - 09:22 #3
Dvs.. kommer lidt an på hvordan din XML ser ud.. som det er nu kan jeg forestille mig at du har en tekst der skal laves til et link.
Noget lign.:
<item url=\"http://bla.dk\">Dette er teksten</item>

Er det rigtigt?
Avatar billede dgivoni Nybegynder
22. august 2001 - 09:29 #4
Stadig samme problem.
mit xml ser sådan ud:
<webpage>
    <title>Frontpage</title>
    <navigation>
        <item url=\"\'default.asp\'\">Frontpage</item>
        <item url=\"\'\'\">Introduction</item>
        <item url=\"\'\'\">Forum</item>
        <item url=\"\'\'\">Sitemap</item>
    </navigation>
</webpage>
Avatar billede dgivoni Nybegynder
22. august 2001 - 09:30 #5
yep, det er rigtigt \'getalife\'.
jeg  nåede at poste inden jeg så din anden kommentar
Avatar billede getalife Nybegynder
22. august 2001 - 09:48 #6
heh.. en lille fehler..
<xsl:for-each select=\"webpage/navigation/item\">
  <a>
      <xsl:attribute name=\"href\">
        <xsl:value-of select=\"@url\"/>
      </xsl:attribute>
      <xsl:value-of select=\".\"/>
  </a>
  <br/>
</xsl:for-each>
Avatar billede getalife Nybegynder
22. august 2001 - 09:53 #7
Desuden slettede jeg de \'\' i din XML
Avatar billede dgivoni Nybegynder
22. august 2001 - 09:54 #8
ja, nu kommer fejlen ikke længere.
Men der er ikke noget i a-href i det endelige dokument?
Avatar billede getalife Nybegynder
22. august 2001 - 09:55 #9
Problemet er at den tror at \" og \' er det samme og derfor viser den ikke dine hrefs
Avatar billede getalife Nybegynder
22. august 2001 - 09:59 #10
Uhm.. med andre og nok mere forståelige ord:
Dit link kommer til at se således ud:
<a href=\"\'link.asp\'\">tekst</a>
Avatar billede dgivoni Nybegynder
22. august 2001 - 10:03 #11
næ, faktisk er mit link bare tomt: href=\"\"
(jeg har også prøvet at slette de ekstra \'\', men med samme resultat)
Hvis jeg sætter <xsl:value-of select=\"@url\"/> uden for løkken skriver den heller ikke noget ud, så det må være et eller andet med at få fat i den attribut, som går galt.
Avatar billede getalife Nybegynder
22. august 2001 - 10:06 #12
hvordan ser din xsl og xml ud nu?

Tjoeh.. det hjælper nu heller ikke noget at sætte den udenfor løkken da den så ikke ved hvad det er for en @url den skal tage
Avatar billede dgivoni Nybegynder
22. august 2001 - 10:06 #13
damn, jeg tror jeg har fundet fejlen i mit asp-script.
Egentlig så bygger jeg xml-dokumentet op ad-hoc fra en database, og i opbygningen er der åbenbart sneget sig en fejl ind, som jeg ikke har set før nu: <item url=\"\" Url=\"default.asp\">Frontpage</item>
Undskyld alt besværet, og tak for hjælpen.
Avatar billede getalife Nybegynder
22. august 2001 - 10:09 #14
heh.. np
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