19. juni 2008 - 14:58Der er
17 kommentarer og 2 løsninger
<select> med dage, måneder og år med automatisk selected
Hej Exp,
Jeg bruger nogle forskellige select bokse til at navigere rundt i datoer med. Jeg mangler dog bare en funktion som automatisk sætter selected ind ud fra den dato som er postet eller dagsdato.
Hvis der ikke er noget i: dato = Request.form("dag") maaned = Request.form("maaned") aar = Request.form("aar")
Så skal dagsdato vælges ellers skal datoen fra request.form vises.
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Der er altså nogle fejl i dit script som jeg har rettet: <select name="dag"> <%For i=1 To 31 Response.Write "<option value=""0"&i&"""" If dato=i Then Response.Write " selected=""selected""" Response.Write """>"&i&"</option>"&vbCrLf Next%> </select>
<select name="maaned"> <%For i=1 To 12 Response.Write "<option value=""0"&i&"""" If maaned=i Then Response.Write " selected=""selected""" Response.Write """>"&MonthName(i)&"</option>"&vbCrLf Next%> </select>
<select name="aar"> <%For i=2007 To 2009 Response.Write "<option value="""&i&"""" If aar=i Then Response.Write " selected=""selected""" Response.Write """>"&i&"</option>"&vbCrLf Next%> </select>
Er det muligt at lave det sådan så måneden starter med et stort bogstav?
For at finde datoen bruger jeg dette stk. kode oven over "dato navigationen"
if Request.form("dag") = "" OR Request.form("maaned") = "" OR Request.form("aar") = "" then dato = Day(Now) maaned = Month(Now) aar = Year(Now) else dato = Request.form("dag") maaned = Request.form("maaned") aar = Request.form("aar") end if
<select name="dag"> <%For i=1 To 31 If i<10 Then iTmp="0"&i Else iTmp=i Response.Write "<option value=""0"&iTmp&"""" If dato=iTmp Then Response.Write " selected=""selected""" Response.Write ">"&i&"</option>"&vbCrLf Next%> </select>
<select name="maaned"> <%For i=1 To 12 Response.Write "<option value=""0"&iTmp&"""" If maaned=iTmp Then Response.Write " selected=""selected""" Response.Write ">"&UCase(Left(MonthName(i),1))&Mid(MonthName(i),2)&"</option>"&vbCrLf Next%> </select>
<select name="aar"> <%For i=aar-2 To aar+2 Response.Write "<option value="""&i&"""" If aar=i Then Response.Write " selected=""selected""" Response.Write ">"&i&"</option>"&vbCrLf Next%> </select>
Vi prøver lige igen så, forhåbentlig uden slåfejl denne gang:
<select name="dag"> <%For i=1 To 31 If i<10 Then iTmp="0"&i Else iTmp=i Response.Write "<option value="""&iTmp&"""" If dato=iTmp Then Response.Write " selected=""selected""" Response.Write ">"&i&"</option>"&vbCrLf Next%> </select>
<select name="maaned"> <%For i=1 To 12 If i<10 Then iTmp="0"&i Else iTmp=i Response.Write "<option value="""&iTmp&"""" If maaned=iTmp Then Response.Write " selected=""selected""" Response.Write ">"&UCase(Left(MonthName(i),1))&Mid(MonthName(i),2)&"</option>"&vbCrLf Next%> </select>
<select name="aar"> <%For i=aar-2 To aar+2 Response.Write "<option value="""&i&"""" If aar=i Then Response.Write " selected=""selected""" Response.Write ">"&i&"</option>"&vbCrLf Next%> </select>
Nu har jeg skilt din kode lidt ad og fået det til at virke :)
- Tak for hjælpen.
<% '************************************************ Dag Response.Write "<select name=""dag"">"&vbCrLf For i=1 To 31 If i < 10 Then iTmp = "0"&i Else iTmp = i End if %> <option value="<%= iTmp %>" <% If cint(dato) = cint(iTmp) Then %> selected="selected"<% End If %>><%= i %></option> <% Response.Write ""&vbCrLf Next Response.Write "</select>"&vbCrLf
'************************************************ Måned Response.Write "<select name=""maaned"">"&vbCrLf For i=1 To 12 If i < 10 Then iTmp = "0"&i Else iTmp = i End if %> <option value="<%= iTmp %>" <% If cint(maaned) = cint(iTmp) Then %> selected="selected"<% End If %>><%= UCase(Left(MonthName(i),1))&Mid(MonthName(i),2) %></option> <% Response.Write ""&vbCrLf Next Response.Write "</select>"&vbCrLf
'************************************************ ÅR Response.Write "<select name=""aar"">"&vbCrLf For i=aar-2 To aar+2 %> <option value="<%= i %>" <% If cint(aar) = cint(i) Then %> selected="selected"<% End If %>><%= i %></option> <% Response.Write ""&vbCrLf Next Response.Write "</select>"&vbCrLf
Hvad hvis du retter: If maaned=iTmp Then Response.Write " selected=""selected""" til: If CInt(maaned)=CInt(iTmp) Then Response.Write " selected=""selected"""
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.