/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Stoppe reset af dropdown-bokse
Fra : Jørgen Staun


Dato : 06-01-03 16:45

Jeg har på min ASP-side et par DropDownbokse, som resetter når man har valgt
en person og uge i boksene. Dette vil jeg godt undgå, så den beholder
værdierne, der er valgt.

Feks. en person med Initalerne "JS" for "uge 2" er valgt, så vil jeg gerne
have at man bare kan vælge uge 3 herefter istedet for at skulle starte
forfra hver gang. Jeg bruger denne kode, men kan ikke lige gennemskue,
hvordan jeg undgår den resetter til default posten (den første i
recordsættet)
----------------------------------------
set rsInit = server.createobject("adodb.recordset")
set rsWeek = server.createobject("adodb.recordset")

SQLInit = "SELECT * FROM medarbejdere ORDER BY INITIALER"
SQLGetWeek = "SELECT * FROM TblUger ORDER BY STARTDATO"
rsInit.open SQLInit, conn, 2, 2
rsWeek.open SQLGetWeek, conn, 3,3

<div id="DropDownsBokse" style="position:absolute; left:130px; top:30px;
width:682px; height:55px; z-index:1">
<table width="99%" height="50" border="0">
<tr>
<form name="FrmCmdVisSkema" method="post" action="" target=_self>

<td width="53%">
<select name="DDInit">
<% do while Not rsInit.EOF %>
<option Value="<% = rsInit("INITIALER") %>"><% =
rsInit("INITIALER") %>-<% = rsInit("FORNAVN")%>,<% = rsInit("EFTERNAVN")
%></option>
<% rsInit.movenext %>
<% loop %>

</select>
</td>
<td width="10%">
<select name="DDGetWeek">
<% do while Not rsWeek.EOF %>
<option value="<% = rsWeek("STARTDATO") %>">
<% = rsWeek("VISNINGSFORMAT_UGE") %>
</option>
<% rsWeek.movenext %>
<% loop %>
</select>
<td width="37%"><input type="submit" name="CmdVisSkema" value="Vis
Skema"></td>
</form>
</tr>
</table>
</div>



 
 
Arne (06-01-2003)
Kommentar
Fra : Arne


Dato : 06-01-03 17:06

Dette vil jeg godt undgå, så den beholder
> værdierne, der er valgt.

Dette kan gøres ved at tjekke om der har været sendt data afsted via din
FORM en gang. Dette gøres lige med en IF-sætning inden dropdownmenuerne
laves.
Vi starter med at bytte "det valgte" ud med an variabel som tjekker på
indhold af den variabel der tildeles værdien ved Afsend/Form action:

> ----------------------------------------
> set rsInit = server.createobject("adodb.recordset")
> set rsWeek = server.createobject("adodb.recordset")
>
> SQLInit = "SELECT * FROM medarbejdere ORDER BY INITIALER"
> SQLGetWeek = "SELECT * FROM TblUger ORDER BY STARTDATO"
> rsInit.open SQLInit, conn, 2, 2
> rsWeek.open SQLGetWeek, conn, 3,3

<%
if dinVariabelSomSkalModtageVærdiVedFormAfsend(DDInit) = "" Then 'tom
eller 0 (nul)
varSelectedData = "" 'tom eller 0 (nul) eller std.tekst
else
varSelectedData = dinVariabelSomSkalModtageVærdiVedFormAfsend(DDInit) 'den
allerede afsendte/modtagne værdi
end if

og så lige en mere:

if dinVariabelSomSkalModtageVærdiVedFormAfsend(DDInit) = "" Then 'tom
eller 0 (nul)
varSelectedVistData = "" 'tom eller 0 (nul) eller std.tekst
else
varSelectedVistData = dinVariabelSomSkalModtageVærdiVedFormAfsend(DDInit)
'den allerede afsendte/modtagne værdi
end if

Det samme gøres så med den næste dropdown (DDGetWeek) - dvs. at er der sendt
værdier afsted før så vil disse blot blive indskrevet og du kan vælge frem
og tilbage i dropdow`sne som det passer dig.


> <form name="FrmCmdVisSkema" method="post" action="" target=_self>
>
> <td width="53%">
> <select name="DDInit">
!!! <option selected
value="<%=varSelectedData%>"><%=varSelectedVistData%></option> 'ekstra
OPTION i din dropdown
> <% do while Not rsInit.EOF %>
> <option Value="<% = rsInit("INITIALER") %>"><% =
> rsInit("INITIALER") %>-<% = rsInit("FORNAVN")%>,<% = rsInit("EFTERNAVN")
> %></option>
> <% rsInit.movenext %>
> <% loop %>
>
> </select>
> </td>

Håber det kunne give en ide til problemløsning.


--
mvh.
Arne Rasmussen
www.rasweb.dk



Jørgen Staun (09-01-2003)
Kommentar
Fra : Jørgen Staun


Dato : 09-01-03 09:45

ahhh - takker, efter lidt fiks-fakseri, så lykkedes det.
Jørgen



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste