Avatar billede nybroe Nybegynder
15. marts 2005 - 10:53 Der er 8 kommentarer

Loop variable fra form

Jeg har en dropdown-menu, hvor man kan vælge antal deltagere i et arrangement. Når man har valgt, kommer man til en side, hvor der er input-felter til at skives navnene på deltagerne. Her looper jeg blot, det antal, der er valgt. Men nu vil jeg gerne lave et request på inputfelterne på en anden side så jeg kan arbejde videre med dem - hvordan gør jeg?

Felterne hedder Navn1, Navn2, Navn3 etc..

<%
strAntal = Request.Form("Antal")

Dim t
For t = 1 to StrAntal Step 1
    Response.Write "<input name=" & chr(34) & "Navn" & t & chr(34) & " type=" & chr(34) & "text" & chr(34) & " value=" & chr(34) & t & chr(34) & ">"
Next
%>
Avatar billede skyggen2000 Nybegynder
15. marts 2005 - 11:09 #1
Hvad mener du med på en anden side?

Efter man har indtastet navnene og trykket gem eller hvad, og bliver den anden side laodet umiddelbart efter?
Avatar billede nybroe Nybegynder
15. marts 2005 - 11:32 #2
Ja, der er 3 sider. På den første vælger man antal. På side 2 skriver man navnene. Og på side 3 requester man inputfelterne, alt afhængigt af hvor mange der er.

Der er flere felter i opgaven, men dette er bare for at koge det ned.
Avatar billede nybroe Nybegynder
15. marts 2005 - 11:33 #3
Det er lige det med at lave en request: ???
Navn = Request.Form("Navn") & t
Avatar billede skyggen2000 Nybegynder
15. marts 2005 - 13:15 #4
OK, på den anden sider gemme du antallet igen, dvs. du laver HTML til en input type = hidden.

Når du skal køre igennem felterne, gør du på samme måde som da du lavede dem, nu skal de bare hentes ind.

strAntal = Request.Form("Antal")

Dim t

For t = 1 to StrAntal
request.form("Navn" & t)
Next

Du skal lave din "&" ind i parantesen.
Avatar billede nybroe Nybegynder
15. marts 2005 - 13:47 #5
Men jeg skal jo bruge variablene. Hvordan får jeg loopet dem?

f.eks.:

Navn1 = request.form("Navn" & t)    -> fx. Hans Jensen
Navn2 = etc...
Avatar billede skyggen2000 Nybegynder
15. marts 2005 - 13:55 #6
Så mu du gemme dem i et Array, og arbejde med dem bagefter.
Avatar billede skyggen2000 Nybegynder
16. marts 2005 - 09:24 #7
Hvis nu du giver samtlige input felter samme navn, vil du når du laver dit request på navnet få en tekstreng med alle navnene, kommasepareret.

Dim testArray

testArray = split(Request.Form("Navn"),",")

Så har du allerede alle navnene i et array.
Avatar billede skyggen2000 Nybegynder
06. april 2005 - 09:30 #8
Fik du det til at virke?
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