Jag använder Dropdowns för att välja för en update.
Men jag har problem att skriva ut vilken som är selected.
Hur löset man det på bästa vis?
Som det är nu skriver den enbart ut den översta posten först i dropdownlistan.
<%
Set Rsmarket = Server.CreateObject("adodb.RecordSet")
Sql = "Select * from tblmarkets"
Rsmarket.open Sql, Conn, 3, 3
%>
<TD width="32%" align=left valign=middle>
<select name=usermarket>
<% Do until Rsmarket.EOF %>
<option value=<%=Rsmarket("marketid")%>><%=Rsmarket("marketname")%>
<%
RsMarket.MoveNext
Loop
%>
Usermarket för personen ligger i tabellen tblusers.
Så den som är selected ska vara tblusers.usermarket
eTeRnAlMedlem sedan sep. 200225 inlägg Jag är långt ifrån bra på detta med html/asp, men lär mig så mycket jag hinner kombinera med mitt nuvarande jobb, vilket jag för övrigt sitter på nu =P
Iaf, till ditt problem som jag *tror* detta är lösningen på:
<%
Set Rsmarket = Server.CreateObject("adodb.RecordSet")
Sql = "Select * from tblmarkets"
Rsmarket.open Sql, Conn, 3, 3
%>
<TD width="32%" align=left valign=middle>
<select name=usermarket>
<% Do until Rsmarket.EOF %>
<option value="<%=Rsmarket("marketid")%>" selected><%=Rsmarket("marketname")%>
<%
RsMarket.MoveNext
Loop
%>
Enda jag gjorde var att just lägga till det du skrev, fast aldrig i koden :) "selected".
Nej detdär kommer bara skriva ut alla som selected.
Men tack för ett försök!
Jag löste det såhär
<%
if trim(rs("usermarket")) = trim(rsmarket("marketid")) then selected = " selected " else selected = " "
%>
eTeRnAlMedlem sedan sep. 200225 inlägg Ah, glömde tänka på att du hade en loop där.
Sorry :)
roadyMedlem sedan jan. 2002473 inlägg blir det verkligen rätt :q
Själv skulle jag nog skrivit:
<%
Set rsMarket = Server.CreateObject("adodb.RecordSet")
Sql = "Select * from tblmarkets"
rsMarket.open Sql, Conn, 3, 3
Response.Write("<TD width=""32%"" align=""left"" valign=""middle"">")
Response.Write("<select name=""usermarket"">")
Do Until rsMarket.EOF
Response.Write("<option value="""& Rsmarket("marketid") & """")
If Request.Form("usermarket") = Rsmarket("marketid") Then Response.Write(" selected")
Response.Write(">")
rsMarket.MoveNext
Loop
rsMarket.Close
Set rsMarket = Nothing
%>
Eftersom du måste väll ha valt något och uppdaterat för att värdet skall ligga kvar, eller så kanske jag missuppfattat allt