Avatar billede kovalt Nybegynder
07. juni 2005 - 16:40 Der er 8 kommentarer og
1 løsning

værdi fra javascript til ASP

Hej

  Jeg har følgende kode:

<body onLoad="document.iframeForm.iframe_field_time.value=parent.window.timerForm.field_time.value;">
<table width="200" cellpadding="2" cellspacing="0">
<form action="" method="post" name="iframeForm">
<input type="text" name="iframe_field_time">
</form>

<% strTime = request.form("iframe_field_time")

response.write "Her: "& request.form("iframe_field_time")



Textfeltet viser fint den værdi den skal men når jeg requester "iframe_field_time" i min ASP får jeg ingenting ud.

Hvordan kan det være og hvad skal jeg gøre for at løse det.
Avatar billede nielle Nybegynder
07. juni 2005 - 17:23 #1
Arbejdsgangen når en bruger kigger på din side, er følgende:

1) ASP-scriptet afvikles på serveren.
2) Den resulterende kode downloades til klienten (brugerens PC).
3) JavaScript koden afvikles i brugerens browser.

Dette er den simple årsag til at det du gør i dit JavaScript ikke er tilgængelig for din ASP kode.
Avatar billede nielle Nybegynder
07. juni 2005 - 17:32 #2
Der er ikke nogen simpel løsning på dit problem.

Der er dog heldigvis en mindre simpel løsning:

1) Du afvikler noget ASP som generere en side til brugeren.
2) På denne er der noget JavaScript som brugerens browser så udføre.
3) Endvidere er der en form på siden, som indeholder nogle hidden-felter svarende til de variable du skal bruge tilbage i ASP-scriptet.
4) JavaScriptet sætter value for disse hidden-felter.
5) Endvidere er der en onLoad-event som sørger for at submitte formen med det samme.
6) Tilbage på serveren udføres nu atter noget ASP kode, og denne gang kan variablene fra JavaScriptet hentes ud af Request.Form().

Altså essentielt tre stadier:

1) Noget ASP på serveren,
2) noget JavaScript på klienten, og
3) atter noget ASP på serveren.
Avatar billede kovalt Nybegynder
09. juni 2005 - 11:50 #3
jeg synes jeg har prøvet det - men den submit jeg sætter på onload får bare siden til at stå og loope.... når jeg submitter loades siden jo igen, hvorpå den submittes og så fremdeles.
Avatar billede nielle Nybegynder
09. juni 2005 - 15:17 #4
Løsningen er at generere noget forskelligt html alt efter om det er første gang siden laves, eller om den kommer tilbage via et reload. Du kan jo f.eks. spørge på om request.form("iframe_field_time") er sat til noget:

1) Hvis den ikke er det, så er det første gang siden vises. I dette tilfælde inkluderer du den kode som sørger for at siden’s onLoad-event submitter formen.

2) Hvis den derimod er sat til noget, så er det fordi at den er resultatet af en submit. I dette tilfælde inkluderer du ikke onLoad-eventen. Og du laver selvfølgelig heller ikke din from.
Avatar billede nielle Nybegynder
24. juni 2005 - 18:27 #5
Har du fået kigget på det?
Avatar billede kovalt Nybegynder
25. juni 2005 - 10:09 #6
Ja jeg har fået det til at virke - smid et svar
Avatar billede nielle Nybegynder
26. juni 2005 - 10:34 #7
Svar :^)
Avatar billede nielle Nybegynder
12. august 2005 - 09:38 #8
Så mangler du bare at acceptere det :^)
Avatar billede nielle Nybegynder
22. august 2005 - 22:46 #9
?
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