Avatar billede themepark Nybegynder
05. september 2003 - 12:17 Der er 11 kommentarer og
2 løsninger

JavaScript funktion med ASP linjer

Hvis jeg har en eller JavaScript funktion, som startes ved onClick f.eks., kan jeg så i den funktion have nogle ASP linjer, som KUN bliver udført, når funktionen startes?
Avatar billede grunken Nybegynder
05. september 2003 - 12:28 #1
Det kommer jo an på hvordan du havde tænkt dig at gøre det ;)

men den letteste workaround er nok at køre asp-delen af functionen i en "skjult frame"
Avatar billede jammer Nybegynder
05. september 2003 - 12:29 #2
ASP er server scripting hvor JavaSCript er client scripting... ASP returnerer færdig HTML. Hvis du skal kunne aktivere noget ASP fra JavaScript skal du altså en tur omkring serveren.

Alternativt kan du stream det HTML/JavaScript, der skal ligge i funktionen - så det er klar til brug, hvis man kalder den.

/Jammer
Avatar billede themepark Nybegynder
05. september 2003 - 12:31 #3
Det jeg gerne vil vide, om det er muligt, er f.eks. sådan noget her.

onClick="Test()"

function Test {
alert("Hejsa")
<% @LANGUAGE="VBScript" %>
<%
Response.Write 1+1
%>
alert("Hejsa igen")
}
Avatar billede sbm Nybegynder
05. september 2003 - 12:35 #4
Det kan du desværre ikke. Som Jammer skriver bliver JavaScript udført på client (altså i browseren) mens ASP bliver udført på webserveren.

ASP delen bliver altså udført først SAMTIDIG MED AT DIN HTML BLIVER GENERERET AF WEBSERVEREN.

Når så endelig din browser har modtaget al html-koden, er webserveren også færdig med at køre din ASP kode, og først da kan du få browseren til at aktivere den JavaScript der står som en del af HTML-kildeteksten.

Hvis du vil have en JavaScript funktion til at udføre noget ASP kode, bliver du nødt til at lave et nyt sideopslag, hvor den pågældende side rummer den ASP kode du gerne vil eksekvere.
Avatar billede jammer Nybegynder
05. september 2003 - 12:38 #5
ASP = Active SERVER Page :-)
Avatar billede themepark Nybegynder
05. september 2003 - 12:41 #6
Yes yes, jeg ved godt både hvad ASP står for og at ASP er server mens JavaScript er klient ;)

Men nu kender jeg ikke alle facetterne af begge sprog, så jeg kunne ikke være sikker på hvorvidt det kunne lade sig gøre eller ej :)
Avatar billede sbm Nybegynder
05. september 2003 - 12:55 #7
Ok. Jeg vil prøve at opdele det i en lidt mere pædagogisk facon:

Når der laves et opslag på din hjemmeside, sker det omtrent i følgende rækkefølge.

1) En person taster adressen på din hjemmeside ind, eller klikker på et link der fører over til din hjemmeside.

2) Browseren slåt den pågældende URL op med en HTTP-forespørgsel.

3) Serveren modtager forespørgslen, og går igang med at fremstille den fornødne HTML side. Hvis siden der slås op er en .htm side, bliver den bare parset til browseren. Hvis det er en .asp (eller .php for den sags skyld) bliver din indlejrede VBScript kode udført.
Det er altså HER at din ASP udføres.

4) Det færdige HTML-dokument - med den tilhørende javascript - er sendt til din browser, og linien mellem browseren og serveren lukkes.

5) Browseren har modtaget det færdige dokument, og et antal triggere i HTML-dokumentet kan så udløse en eller flere af de indlejrede JavaScript funktioner. Eksempelvis <body onload="Test();">
Først HER er det muligt at udføre JavaScript funktioner.

Du kan altså ikke på nogen måde udføre de to ting samtidig. Eksemplet du skrev for oven vil producere noget html kode der ser omtrent således ud:

function Test {
alert("Hejsa")
2
alert("Hejsa igen")
}

Det vil næppe kompilere, men det var måske også bare et lidt dårligt eksempel?
Avatar billede sbm Nybegynder
05. september 2003 - 12:55 #8
Argh. Punkt 2)  slåt >> slår
Avatar billede jammer Nybegynder
05. september 2003 - 12:59 #9
sbm: Du fortjener simpelthen de 15 point for den yderst velformulerede forklaring :-)

/Jammer
Avatar billede sbm Nybegynder
05. september 2003 - 13:02 #10
Tak tak. Jeg er nu ret ligeglad med pointene... :-)
Avatar billede themepark Nybegynder
07. oktober 2003 - 03:15 #11
Nu er det jo noget tid siden jeg oprettede denne tråd, så jeg må vist hellere se at få den lukket igen ;)

jammer, jeg har en bedre ide...jeg giver jer (hvis sbm gider give et svar) begge 2 15 point...du får for at være den første til at forklare, sbm for velformuleringen ;)
Avatar billede sbm Nybegynder
07. oktober 2003 - 09:02 #12
Svar svar og tak tak.
Avatar billede jammer Nybegynder
07. oktober 2003 - 19:35 #13
det lyder som en god deal :-)
/Jammer
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