Avatar billede fjabboy Nybegynder
25. november 2001 - 15:13 Der er 9 kommentarer og
1 løsning

Import af VBScriptside i XSLT

Hvordan importerer man en VBScriptside under en <TD></TD> i et XSLT-dokument?
Følgende virker ikke...
<td>
<!-- #include file=\"statistik.asp\" -->
</td>

\\fjabboy
Avatar billede Slettet bruger
25. november 2001 - 21:34 #1
Nej - det virker ikke, ASP fortolkeren kun checker #include\'s i ASP filer. XSLT opfører sig lidt ligesom ASP, idet den pre-processerer dokumentet før det sendes til klienten.

<xsl:include /> kan evt. benyttes, men det kommer lidt an på hvad der sker i \"statistik.asp\" - kan du uddybe det - er det clientside kode, eller er det \"færdig\" HTML?

/CS
Avatar billede fjabboy Nybegynder
26. november 2001 - 08:47 #2
\"Statistik.asp\" består af kode som skal køres på serveren, og derefter refereres til vha.
<% hvadmannuskalhavevist %>
Det kan naturligvis ikke afvikles på en XSL-side, men hvad gør man så? Hvilke tags bruger man?
Et andet spørgsmål:
Hvorledes bruger man: <xsl:include />
Skal man skrive sådan: <xsl:include href=\"statistik.asp\" /> </xsl:include> eller hvad? Jeg får fejl når jeg gør sådan...

\\fjabboy
Avatar billede Slettet bruger
28. november 2001 - 13:12 #3
<xsl:include /> bruges som du har forsøgt, men det kræver at resultatet er et XSLT Stylesheet... lad os antage at \"statistik.asp\" *beregner* dags dato (med Now(), f.eks. :-), så vil du kunne smide den ud ved at lave \"statistik.asp\" sådan her:

<%@language=\"VBScript\"%>
<?xml version=\"1.0\"?>
<xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">

<xsl:template name=\"writeNow\">
  <![CDATA[<%= Now() %>]]>
</xsl:template>
</xsl:stylesheet>

----------------
I roden af dit hovedstylesheet (før den første template) kan du nu bruge <xsl:include href=\"statistik.asp\" />, og dér hvor du skal bruge outputtet, f.eks.:

<td>
  <xsl:call-template name=\"writeNow\" />
</td>

----------------
/CS
Avatar billede fjabboy Nybegynder
28. november 2001 - 14:27 #4
Det virker stadig ikke.
Jeg får følgende fejl:

A name was started with an invalid character. Line 3, Position 2

<%@language=\"VBScript\"%>
-^

Har skrevet som følger i min XSLT-fil:
<%@language=\"VBScript\"%>
<?xml version=\"1.0\" encoding=\'ISO-8859-1\'?>
<xsl:stylesheet type=\"text/xsl\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">
<xsl:include href=\"statistik.asp\" />
<xsl:template name=\"writeNow\">
  <![CDATA[<%=Session(\"tid\") %>]]>
</xsl:template>
...efterfulgt af en masse andre templates.

Kan parseren ikke forstå et \"%\"-tegn eller hvad?
Tak for de andre svar greystate!
\\fjabboy
Avatar billede Slettet bruger
28. november 2001 - 14:41 #5
Øøøh - du HAR da kaldt den \".asp\", ikke? Fejlen virker som om den ikke bliver parset som ASP, men som XSLT med det samme...

/CS

- Værsågod :-)
Avatar billede Slettet bruger
28. november 2001 - 14:47 #6
Aaah..., jamen nu ser jeg jo lige noget...

Du skal have 2 filer:

- dit hovedstylesheet, f.eks: \"main.xsl\"
- det \"genererede\" stylesheet, \"statistik.asp\"

Flg. er i \"statistik.asp\":
---------------------------
<%@language=\"VBScript\"%>
<?xml version=\"1.0\"?>
<xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">

<xsl:template name=\"writeNow\">
  <![CDATA[<%= Now() %>]]>
</xsl:template>
</xsl:stylesheet>
-----------------------------------

Flg. er et sted i \"main.xsl\":
-----------------------
...
<td>
  <xsl:call-template name=\"writeNow\" />
</td>
...
---------------------------------

- Det ser ud som om du har blandete dem sammen...

/CS
Avatar billede Slettet bruger
28. november 2001 - 14:48 #7
Ups!

I \"main.xsl\" har du naturligvis også include-sætningen:

<xsl:include href=\"statistik.asp\" />

/CS
Avatar billede fjabboy Nybegynder
28. november 2001 - 15:33 #8
Hej igen ;o)
Roden af mit hovedstylesheet ser sådan ud:

<?xml version=\"1.0\" encoding=\'ISO-8859-1\'?>
<xsl:stylesheet type=\"text/xsl\" xmlns:xsl=\"http://www.w3.org/TR/WD-xsl\">
<xsl:include href=\"statistik.asp\" />
<xsl:template match=\"/\">
<html>........................osv.

Men alligevel får jeg følgende fejl:

Keyword xsl:include may not be used here.


\\fjabboy
Avatar billede fjabboy Nybegynder
28. november 2001 - 15:39 #9
Hey hov - jeg glemte vist....
xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\"
istedet for...

\\fjabboy
Avatar billede Slettet bruger
28. november 2001 - 16:11 #10
Hehe :-)

Ja - det gamle namespace er rent legetøj i forhold til hvad man kan udrette med det \"officielle\" XSLT namespace...

/CS
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