Avatar billede hnteknik Novice
19. august 2002 - 23:26 Der er 7 kommentarer og
1 løsning

Server Jscript i javascript under VBscript

I jender sikker godt problemet: manhar noget godt kørende i f.eks. VBscript og vil nu gerne anvende det på en ny site, hvor templaten er lavet i javascript.

Jeg har noget javascript, der danner en DHTML menu. Den dynamiske del læses via ASP skrevet i Jscript, altså:

<script language="JavaScript">
.......

<% ...databasesnask....%>
</script>

Det kører jo helt fint, så det laver man som en template for alle de andre sider.

Så kommer man til admin delen til siten - den skrev man jo i VBscript, og man husker de kvaler man havde, så hvorfor ikke bruge det som det er:

<%@ Language=VBScript LCID=1030%>
<% bla bla bla%>
<!--#include file="../scripts/javascipt delen.asp" -->



det går jo ikke, så man forsøger sig med en opdeling af scriptet og for ASP indskuddet:
<script language='JScript' Runat='Server'>

nix for 'Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0400)
En sætning var ventet'
<script language='JScript' Runat='Server'>

Jeg er træt - hvad gør jeg galt her: hvordan får jeg noget server jscript til at indlejre sig i klient javascript under noget VBscript ??

Jeg har prøvet at slette : <%@ Language=VBScript LCID=1030%>

Henrik
Avatar billede medions Nybegynder
19. august 2002 - 23:32 #1
<%@ Language=JScript %>

//>Rune
Avatar billede mortrr Praktikant
20. august 2002 - 01:45 #2
<% @language=jscript%><html><body>
<script language=vbscript runat=server>
function HilsSoeren()
    Response.Write "Hej Søren"
end function

Datoen=FormatDateTime(Date())

</script>
<%
HilsSoeren();
%>
<script language=jscript runat=server>
Response.Write("<br>Dato: "+Datoen);
</script>

<body>
</html>
Avatar billede mortrr Praktikant
20. august 2002 - 01:47 #3
Som du kan se i eksemplet, skal dit <script tag være i client-delen af html-siden. Men de udføres på serveren alligevel.
Det giver nok lidt problemer med de filer du vil inkludere, da de jo sikkert er skrevet til server-side.

- Morten
Avatar billede hnteknik Novice
20. august 2002 - 15:15 #4
>>mortrr

Jeg må lige hjem og vende hjemme serveren. Includefilen indeholder al javascript snasket og funker jo fint indsat i javascript asp filer. Include filen danner noget DHTML klient javascript, som bruges på siden.

Jeg har som nævnt prøvet at dele javascript delen op i bidder og specificere <%%> delen som noget <script language=jscript runat=server>, men serveren forsøger at fortolke det som vbscript. Jeg må hjem og koge på det - I hører nærmere!
Henrik
Avatar billede hnteknik Novice
20. august 2002 - 21:12 #5
>>mortrr

Der sker altså noget, når er vbscript som standard - kernen i sagen er som dette eksempel:

<%@ Language=VBScript LCID=1030%>
<% response.Buffer = TRUE
response.expires = 0
%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
var Datoen=Date()+1;

<%
// here we have the problemas
var Datoen2=Date()+1;
%>
</script>

</head>
<script language=vbscript runat=server>
Dim Datoen
function hilssoren()
    Response.Write "hej henrik"
end function

Datoen= FormatDateTime(Date())
</script>

<%
hilssoren()
%>
<script language=JScript runat=server>
    Response.Write("<br>Dato: " + 'Datoen er ikke deffet her !');
</script>
<body>

</body>
</html>
Avatar billede hnteknik Novice
22. august 2002 - 09:39 #6
Der er tilsyneladende kun to måder at løse denne sammenblanding på:

1: at skrive det hele om til response.write(.....
2: at skrive jscript delen om til vbscript

Sight - jeg valgte det sidste

Henrik :(
Avatar billede mortrr Praktikant
22. august 2002 - 10:25 #7
Du kan også bare lave <% %> om til <script... </script>

<%@ Language=VBScript LCID=1030%>
<% response.Buffer = TRUE
response.expires = 0
%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
var Datoen=Date()+1;

</script>
<script language="jscript" runat="server">
// here we have the problemas
var Datoen2=Date()+1;
</script>
</head>
<script language=vbscript runat=server>
Dim Datoen
function hilssoren()
    Response.Write "hej henrik"
end function

Datoen= FormatDateTime(Date())
</script>

<%
hilssoren()
%>
<script language=JScript runat=server>
    Response.Write("<br>Dato: " + Datoen2);
</script>
<body>

</body>
</html>
Avatar billede hnteknik Novice
04. oktober 2002 - 12:06 #8
>>mortrr

Jeg lukker sagen, da det som saggt endte med, at jeg har to templates:
1 til Jscriptet fra start og en til VBscriptet fra start, Sidstnævte ville ikke som jeg ville.

jeg havde gerne givet dig en skærv for dit arbejde, men det sidste er kommenteret kun.

Henrik
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