Du får ju se till att du jämför med rätt subtyper. Strängen "88" är inte samma sak som talet 88.
If cstr(i1) = Right(rs("f_birthYear"),2) Then
4 svar · 219 visningar · startad av Mika3l
Har en liten kod som ser ut som följande.
For i1 = 0 to 99
If i1 = Right(rs("f_birthYear"),2) Then
selected1 = " selected=""selected"""
Else
selected1 = ""
End If
If i1 < 10 Then
Response.Write("<option value=""0" & i1 & """" & selected1 & ">0" & i1 & "</option>")
Else
Response.Write("<option value=""" & i1 & """" & selected1 & ">" & i1 & "</option>")
End If
Next
Jag vill att <option>-rutan med värdet som stämmer överens med det som är i databasen ska få en selected="selected" så den hamnar överst, men det vill inte fungera.
Det fungerar bra om jag skriver If i1 = tal Then direkt men inte med det som står nu.
Testade att använda samma kod (Right()) och skriva ut talet (88) och det fungerade bra.
Ingen <option> får något selected-värde.
Någon som har någon susning om vad som kan vara fel? :o
Du får ju se till att du jämför med rätt subtyper. Strängen "88" är inte samma sak som talet 88.
If cstr(i1) = Right(rs("f_birthYear"),2) Then
Strängfunktioner kan ta i stort sett vad som helst som input (tyvärr), men returnerar strängar. Så: Kör du right() på ett tal, då får du en sträng tillbaka.
(Om jag inte är helt bakom flötet så bör det rimligen vara så det fungerar i alla fall. ;) )
Ok, det låter ganska troligt faktiskt. ;)