Jo, det borde funka.
Man får se till att utöka arrayen dynamiskt, med Ubound(). Även se till att den inte blir för stor.
/T
3 svar · 170 visningar · startad av Vide
Kan man på något smidigt sätt göra om flera Request's till en array, typ:
For each xxx in Request.Form.contents
i = i + 1
MyArray(i) = Request.Form.value
Next
... Nu ser ju detta lite konstigt ut, men ni förstår säkert principen.
------------------
)|(
(o o)
-oo0-(_)-0oo-----
webeye.nu *hem*
vide@4sale.se
Jo, det borde funka.
Man får se till att utöka arrayen dynamiskt, med Ubound(). Även se till att den inte blir för stor.
/T
Hittade ett exempel på det i Professional ActiveServerPages 3.0:
For each objitem in Request.Form
If Request.Form(objitem).count > 1 then
For initloop = 1 To Request.Form(objitem).count
MyArray(initloop) = Request.Form(objItem)(initloop)
Next
Else
MyArray(1) = Request.Form(objItem)
End If
Next
.. den här koden kolla samtidigt om det finns flera värden i en 'collection'...
------------------
)|(
(o o)
-oo0-(_)-0oo-----
webeye.nu *hem*
vide@4sale.se
Ja, koden ser ganska bra ut. Det jag är tveksam till är dimensioneringen av arrayen. Jag skulle nog löst det genom att lägga det i en sträng och split:at den:
Dim vaFormValues
Dim sItm, sFormValues
Dim i
For Each sItm in Request.Form
If Request.Form(sItm).Count > 1 then
For i = 1 To Request.Form(sItm).Count
sFormValues = sFormValues & Request.Form(sItm)(i) & ";"
Next
Else
sFormValues = sFormValues & Request.Form(sItm) & ";"
End If
Next
vaFormValues = Split(sFormValues, ";")
------------------
/ Torbjörn Hansson, webbutvecklare/gränssnittsprogrammerare
Spetsdata AB