RS("kategoriID") är inte lika med Request.Form("kategoriID") eftersom de har olika datatyper.
Jag har försökt göra en lösning där två selectboxar skall vara kopplade till varandra.
Selectbox 1 innehåller huvudkategorierna i ett menysystem. Om man gör ett val i selectbox 1, och den kategorin innehåller någon underkategori, så skall selectbox 2 visas, och lista rätt underkategorier. Så långt fungerar det också. Men, när jag gjort ett val i selectbox 1 så hoppar den tillbaka till "Välj kategori", jag vill ju självfallet att valet i föregående selectbox skall fortsätta visa det val man gjort.
Så jag tänkte att kanske fler ögon är bättre än mina två dåliga ögon.
<form method="post" name="kategori">
<strong>Kategori:</strong><br>
<select name="kategoriID" style="font: 10px Verdana, Tahoma;width: 150px; margin: 0 0 10 0;" onchange=kategori.submit()>
<% Set RS = Conn.Execute("SELECT * FROM kategorier WHERE parentID = '0'")
If RS.EOF Then
Response.Write "<option><i>Inga kategorier ännu</i></option>"
Else
If Request.Form("kategoriID") = "" Then
Response.Write "<option>Välj kategori</option>"
Do Until RS.EOF %>
<option value="<%=RS("kategoriID")%>"><%=RS("kategoriNamn")%></option>
<% RS.MoveNext
Loop
Else
Response.Write "<option>Välj kategori</option>"
Do Until RS.EOF %>
<option value="<%=RS("kategoriID")%>" <% If RS("kategoriID") = Request.Form("kategoriID") Then Response.write " selected"%>><%=RS("kategoriNamn")%></option>
<% RS.MoveNext
Loop
End If
End If
RS.Close %>
</select>
</form>
<% If Request.Form("kategoriID") <> "" Then %>
<form method="post" name="underkategori">
<% Set RS = Conn.Execute("SELECT * FROM kategorier WHERE parentID = '" & Request.Form("kategoriID") & "'")
If RS.EOF Then
Else %>
<select name="underkategoriID" style="font: 10px Verdana, Tahoma;width: 150px; margin: 0 0 10 0;" onchange=underkategori.submit()>
<% Response.Write "<option>Välj underkategori</option>"
Do Until RS.EOF
Response.Write "<option value="& RS("kategoriID") &">" & RS("kategoriNamn") & "</option>"
RS.MoveNext
Loop
End If
RS.Close %>
</select>
<input type="hidden" name="kategoriID" value="<%=Request.Form("kategoriID") %>">
</form>
<% End If %>
KategoriID = <%=Request.Form("kategoriID") & "<br>"%>
UnderkategoriID = <%=Request.Form("underkategoriID") & "<br>"%>
Någon som hittar något fel? Eller kan komma med ett bättre sätt att lösa detta på.
Som sagt, det funkar, men det fungerar inte tillfredsställande :)
Värt att nämna är också att om jag exempelvis ändrar
<option value="<%=RS("kategoriID")%>" <% If RS("kategoriID") = Request.Form("kategoriID") Then Response.write " selected"%>><%=RS("kategoriNamn")%></option>
till
<option value="<%=RS("kategoriID")%>" <% If RS("kategoriID") = "3" Then Response.write " selected"%>><%=RS("kategoriNamn")%></option>
Så fungerar det med den kategori som har ID 3. Vilket jag även tycker ovanstående borde göra, eftersom
Response.Write Request.Form("kategoriID")
skriver ut det ID som valts