Avatar billede michaeltajo Nybegynder
15. januar 2004 - 09:27 Der er 31 kommentarer og
1 løsning

Understøttelse af JavaScript

Jeg kører en IIS 5.0, og officielt understøtter den JavaScript; men hvis man laver en for-løkke som fx:

for (i=0; i=10; i++) {
    response.write(i);
    }

så forventer IIS-ens JScript-fortolker, at den første linje afsluttes efter "i=0;". Hvad kan man gøre ved det ? Kan man evt. downloade en rettelse til parseren ?

mvh
Tajo
Avatar billede nak-m Nybegynder
15. januar 2004 - 09:30 #1
Det er da også en farlig løkke, du har lavet - den fortsætter uendeligt :)
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 09:33 #2
Nej, den slutter når i har værdien 10.

Tajo
Avatar billede nak-m Nybegynder
15. januar 2004 - 09:34 #3
nej så skulle den hedde:

for (i=0; i<=10; i++) {
  response.write(i);
}
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 09:36 #4
Sorry, selvfølgelig har du ret...

Tajo
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 09:38 #5
Har rettet fejlen; men det virker stadig ikke !

Tajo
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 09:40 #6
Fejlmeddelelsen er:

Fejltype:
Der opstod en Microsoft JScript-kompileringsfejl (0x800A03EE)
Tegnet ')' var ventet
/MitWeb/loop02_js.asp, line 15, column 8
For (i=0; i<=5; i++) {
-------^

Tajo
Avatar billede powerade Nybegynder
15. januar 2004 - 09:42 #7
Hmm, du kan evt forsøge dig med en While løkke istedet...
while(i <= 10)
  {
      ...Some Code...
      i++;
  }
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 09:44 #8
Selvfølgelig kunne jeg det; men det løser ikke det principielle problem...

Tajo
Avatar billede powerade Nybegynder
15. januar 2004 - 09:48 #9
Prøv evt. følgende istedet
for (var i = 0; i <= 10; i++)
{
  response.write(i);
}
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 09:55 #10
Virker stadig ikke; men Sun har en ASP parser, som ser lovende ud på adressen http://docs.sun.com/source/817-2514-10/Ch14_ScriptLang3.html

...prøver den lige...

Tajo
Avatar billede mat Nybegynder
15. januar 2004 - 09:58 #11
Jeg ved ikke rigtigt noget om asp, men det du prøver er vel at bruge javascript-syntaks i asp. Kan problemet så ikke ligge i din definering af at det er det sprog du bruger (et vildt gæt, men det kunne se ud som om at fortolkeren tror at semikolon er slutningen på en programlinie (selvom det er perfectly valid i et for loop i javascript))
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:03 #12
>>> mat
Jeg ved ikke rigtigt, hvad du mener; men problemet er, at JScript-fortolkeren *skal* fortolke et ";" inde i parentesen som opdelingstegn, og *ikke* som sætningsafslutning.
Microsofts side om emnet
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/js56jserrexpected2.asp
siger selv, at syntaksen er:

for (initialize; test; increment) {
statement;
}

MEN jeg får alligevel ovenstående fejlmeddelelse.

Tajo
Avatar billede powerade Nybegynder
15. januar 2004 - 10:04 #13
Prøv at poste din kode i den sammenhæng den bliver brugt...
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:07 #14
Værsgo:

<% @language="javascript" %>
<html>
<body>

<%
i=5;
famname = new Array(5);
famname(0) = "Jan Egil";
famname(1) = "Tove";
famname(2) = "Hege";
famname(3) = "Stale";
famname(4) = "Kai Jim";
famname(5) = "Borge";

For (var i=0; i<=5; i++) {
    response.write("<h2>" + famname(i) + "</h2>");
    }
%>

</body>
</html>

Tajo
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:09 #15
Jeg har forresten fundet en skønhedsfejl og rettet den...

<% @language="javascript" %>
<html>
<body>

<%
famname = new Array(5);
famname(0) = "Jan Egil";
famname(1) = "Tove";
famname(2) = "Hege";
famname(3) = "Stale";
famname(4) = "Kai Jim";
famname(5) = "Borge";

For (var i=0; i<=5; i++) {
    response.write("<h2>" + famname(i) + "</h2>");
    }
%>

</body>
</html>

Tajo
Avatar billede erikjacobsen Ekspert
15. januar 2004 - 10:11 #16
erstat "For" med "for"
Avatar billede mat Nybegynder
15. januar 2004 - 10:13 #17
Som sagt er jeg ikke asp-ekspert (og jeg er heller ikke javascript ekspert) men i mine øjne skulle det se sådan her ud:

<% @language=Javascript %>
<html>
<body>

<%
famname = new Array(5);
famname[0] = "Jan Egil";
famname[1] = "Tove";
famname[2] = "Hege";
famname[3] = "Stale";
famname[4] = "Kai Jim";
famname[5] = "Borge";

for (var i=0; i<=5; i++) {
    response.write("<h2>" + famname(i) + "</h2>");
    }
%>

</body>
</html>
Avatar billede mat Nybegynder
15. januar 2004 - 10:15 #18
hov OG:

response.write("<h2>" + famname[i] + "</h2>");

Jeg er ret sikker på at indexering i arrays i javascript er med brackets og ikke paranteser.
Avatar billede erikjacobsen Ekspert
15. januar 2004 - 10:15 #19
Og yderligere

Response.Write("<h2>" + famname[i] + "</h2>");
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:15 #20
>>> eriikjacobsen

Jeg har rettet det til:

<% @language="javascript" %>
<html>
<body>

<%
famname = new Array(5);
famname(0) = "Jan Egil";
famname(1) = "Tove";
famname(2) = "Hege";
famname(3) = "Stale";
famname(4) = "Kai Jim";
famname(5) = "Borge";

for (var i=0; i<=5; i++) {
    response.write("<h2>" + famname(i) + "</h2>");
    }
%>

</body>
</html>

og nu får jeg følgende fejlmeddelelse:

Fejltype:
Der opstod en Microsoft JScript-kørselsfejl (0x800A138B)
Der kan ikke tildeles til resultatet af en funktion
/MitWeb/loop02_js.asp, line 7

Hvad F***** sker der ?!?!?!?!

Tajo
Avatar billede erikjacobsen Ekspert
15. januar 2004 - 10:18 #21
Og

famname[0] = "Jan Egil";
famname[1] = "Tove";
famname[2] = "Hege";
famname[3] = "Stale";
famname[4] = "Kai Jim";
famname[5] = "Borge";
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:19 #22
>>> erikjacobsen

...tåbelige overseelser fra min side...undskyldningen er, at det er VBScript, som er omskrevet til JavaScript, da jeg ikke har lyst til at benytte mig af VBScript, hvis det kan undgås...

Tajo
Avatar billede powerade Nybegynder
15. januar 2004 - 10:19 #23
Hvis det skal være JavaScript ska det se sån her ud...
<html>
<body>
<script language="JavaScript" type="text/javascript">
famname = new Array(5);
famname(0) = "Jan Egil";
famname(1) = "Tove";
famname(2) = "Hege";
famname(3) = "Stale";
famname(4) = "Kai Jim";
famname(5) = "Borge";
for (var i=0; i<=5; i++) {
    response.write("<h2>" + famname(i) + "</h2>");
    }
</script>
</body>
</html>
Avatar billede powerade Nybegynder
15. januar 2004 - 10:21 #24
Men så kan du vist ikke bruge response.write, skal vist være document.write istedet...
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:24 #25
>>> powerade: jeg vil køre ASP, så din løsning duer desværre ikke

>>> erik:
Jeg har nu rettet koden til:
<% @language="javascript" %>
<html>
<body>

<%
famname = new Array(5);
famname[0] = "Jan Egil";
famname[1] = "Tove";
famname[2] = "Hege";
famname[3] = "Stale";
famname[4] = "Kai Jim";
famname[5] = "Borge";

for (var i=0; i<=5; i++) {
    response.write("<h2>" + famname[i] + "</h2>");
    }
%>

</body>
</html>

og får nu følgende meddelelse:

Fejltype:
Der opstod en Microsoft JScript-kørselsfejl (0x800A1391)
'response' er ikke defineret
/MitWeb/loop02_js.asp, line 15

mvh
Tajo
Avatar billede erikjacobsen Ekspert
15. januar 2004 - 10:25 #26
Se Kommentar: erikjacobsen 15/01-2004 10:15:56
Avatar billede powerade Nybegynder
15. januar 2004 - 10:28 #27
Ska response ikke være med stort R?
Response
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:31 #28
>>> erik

Hardcore mange tak. Måske skal jeg bare lave mine scripts fra bunden af...

Du har reddet min dag !!!!

Kan du ikke sende mig et svar, så du kan få dine velfortjente points ?????!!!!!!

mvh
Tajo
Avatar billede erikjacobsen Ekspert
15. januar 2004 - 10:33 #29
Selv tak, tajo. En fornøjelse at hjælpe een, der vil forlade VB-verdenen.
Men jeg samler slet ikke på point.
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:34 #30
Og til Jer andre !

Tak for indsatsen...

Tajo
Avatar billede michaeltajo Nybegynder
15. januar 2004 - 10:41 #31
>>> mat

Hvis du giver mig et svar, får du pointsene...

Tajo

P.S.: Du har selvfølgelig ret i det med de firkantede paranteser...
Avatar billede mat Nybegynder
15. januar 2004 - 10:47 #32
ok så skidt da :P
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
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

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