[ASP] Drop down box selecteeren

Pagina: 1
Acties:

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Hoi, ik probeer met ASP een Drop-down box te maken met data uit een DB. dit werkt ( joeppieeee ) maar nu,

omdat er nogal wat andere waardes in de pagina zijn die 'dynamisch' zijn ( worden elke keer gerefresh ) moet hij weten wat zijn waarde 'was' voordat de pagina een refresh deed..

tijdens die refresh worden andere tabellen aangemaakt met de data die bv. in deze box word ingevult.

nu heb ik het onderstaande gemaakt. dit werkt niet ..hij selecteerd elke keer de laatste waarde in mijn db.. en niet de waarde die ik opgegeven heb.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<%

Response.Write("<select name='GuiJobFunction' >")
Response.Write("<option> Select Job Department </option>")
Do while NOT Records2.EOF
If request.form("GuiJobFunction")= records2("Department") then selected100 = " Selected "
If Request.Form("GuiJobfunction")= "Other" then Selected101 = " Selected "
Response.Write("<option" & selected100 & ">" & Records2("Department") & "</option>")
Records2.movenext
loop
Response.Write("<option" & Selected101 & "> Other /option>")
Response.Write("</select>")
%>

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Updateje,

ik heb met een response.write de waarde uitgelezen ervan en die is wel goed :(

nu weet ik het helemaal niet meer.

Verwijderd

probeer i.p.v. loop --> wend
zal waarschijnlijk niet veel uitmaken, maar wie weet

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
dat vond hij niet zo tof


Microsoft VBScript compilation (0x800A0400)
Expected statement
/newuser/request_new_user.asp, line 105

  • ArchRAIDen
  • Registratie: Juni 2001
  • Laatst online: 08-04 16:29
Ik begrijp hieruit dat je de waarde wilt weten van het geselecteerde item.

Wat je zou kunnen doen is het volgende:

aan het begin van je pagina in de .ASP code m.b.v.:
code:
1
  selectie = Request.Form( "<naam van selectieveld>" )

Hiermee kun je de waarde van het selectieveld ophalen, als deze geen waarde bevat (bijvoorbeeld bij de eerste aanroep van je pagina) is dat niet erg, de variabele zal dan leeg zijn.

Als je nu je selectieveld weer vult, kun je m.b.v. die variabele controleren welke waarde al geselecteerd was en die selected maken.

Succes!!

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Hoi, ik heb nu dit,
code:
1
2
3
4
5
6
7
8
9
selectie = Request.Form("GuiJobFunction")
Response.Write("<select name='GuiJobFunction' onchange='frm.submit()' >")
Response.Write("<option> Select Job Department </option>")
Do while NOT Records2.EOF
if selectie = records2("Department") then Selected100 = " Selected " 
Response.Write("<option" & selected100 & ">" & Records2("Department") & "</option>")
Records2.movenext
loop
Response.Write("</select>")

Toch denk ik dat het niet helemaal is wat je bedoelt,
hij doet namelijk hetzelfde.. alleen met een mooiere code :)

  • Banzi
  • Registratie: Juni 2001
  • Laatst online: 25-08 09:58
Op dinsdag 14 mei 2002 09:28 schreef burp2001 het volgende:
Hoi, ik heb nu dit,
code:
1
2
3
4
5
6
7
8
9
selectie = Request.Form("GuiJobFunction")
Response.Write("<select name='GuiJobFunction' onchange='frm.submit()' >")
Response.Write("<option> Select Job Department </option>")
Do while NOT Records2.EOF
if selectie = records2("Department") then Selected100 = " Selected " 
Response.Write("<option" & selected100 & ">" & Records2("Department") & "</option>")
Records2.movenext
loop
Response.Write("</select>")

Toch denk ik dat het niet helemaal is wat je bedoelt,
hij doet namelijk hetzelfde.. alleen met een mooiere code :)
Als er eenmaal een geselecteerd is, is de rest erna ook geselecteerd... Zelf maak ik het dan altijd zo:
code:
1
2
3
4
5
6
7
8
9
10
11
12
selectie = Request.Form("GuiJobFunction")
Response.Write("<select name='GuiJobFunction' onchange='frm.submit()' >")
Response.Write("<option> Select Job Department </option>")
Do until Records2.EOF
Response.Write("<option")
if selectie = records2("Department") THEN
  Response.Write(" Selected") 
End if
Response.Write(">" & Records2("Department") & "</option>")
Records2.movenext
loop
Response.Write("</select>")

Ik zag, ik nam en ik kwam...


Verwijderd

Dit werkt inderdaad niet, dit werkt denk ik beter:

selectie = Request.Form("GuiJobFunction")
Response.Write("<select name='GuiJobFunction' onchange='frm.submit()' >")
Response.Write("<option value="{record_id!!}"> Select Job Department </option>")
Do until Records2.EOF
Response.Write("<option")
if int(selectie) = int(records2("id!!!!")) THEN
Response.Write(" Selected")
End if
Response.Write(">" & Records2("Department") & "</option>")
Records2.movenext
loop
Response.Write("</select>")

-------------------------------------------------------
Dit werkt zeker. Ik heb hier ook al vaker mee te kampen gehad. Gewoon met id's werken.

Succes

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Thanks!

maare, ik wil niet heel vervelend zijn.. ik heb nog nooit met int gewerkt.. wat moet ik hier invullen ?
code:
1
Response.Write("<option value='{record_id!!}'"> Select Job Department </option>")


code:
1
if int(selectie) = int(records2("id!!!!")) THEN

als ik m zo laat komt hij met een error :)

Verwijderd

int maakt overal een integer van.

code:
--------------------------------------------------------------------------------
Response.Write("<option value="records2("id")"> Select Job Department </option>")
--------------------------------------------------------------------------------

code:
--------------------------------------------------------------------------------
if int(selectie) = int(records2("id")) THEN
--------------------------------------------------------------------------------
Ik hoop dat je veld 'id' heeft in je tabel. Anders moet je ff de naam 'id' veranderen in de naam die jij gebruikt in de tabel!

Succes
_______________________
Het is op geen enkele wijze goed te keuren wanneer iemand fysiek geweld gebruikt om tegenstanders het zwijgen op te leggen. Maar maak niet de fout om de schuld van zo'n actie bij iemand anders dan de dader te leggen. © Lord Daemon
Pagina: 1