Jag har problem att fylla en listbox med namn från en databas tabell. Kolla i den här tråden: *Gräver lite i verktygslådan*Fylla en Listbox med info från databas?
Tacksam för alla svar
Mvh SvempaSv: Fylla en Listbox med info från databas?
http://www.pellesoft.nu/development/forum/view.asp?msgid=8843&forumid=1
/TomasSv: Fylla en Listbox med info från databas?
<code>
Function DropDownList(sConnectionString, sSQL, iValue, iOption, sName, sClass, sFirstOption, iFirstValue, sSelectedOption, vSelectedValue, sJavascript, bEmpty)
Dim oRS, sHTML
sHTML = "<select name=""" & sName & """ class=""" & sClass & """"
If sJavascript <> "" Then sHTML = sHTML & " " & sJavascript
sHTML = sHTML & ">" & CrLf
If sFirstOption <> "" Then
sHTML = sHTML & "<option value=""" & iFirstValue & """>" & sFirstOption & "</option>" & CrLf
End If
Set oRS = Server.CreateObject("ADODB.RecordSet")
oRS.Open sSQL, sConnectionString
If oRS.EOF Then bEmpty = True Else bEmpty = False
While Not oRS.EOF
If sSelectedOption = oRS(iOption) Or vSelectedValue = oRS(iValue) Then
sHTML = sHTML & "<option selected value=""" & oRS(iValue) & """>" & oRS(iOption) & "</option>" & CrLf
Else
sHTML = sHTML & "<option value=""" & oRS(iValue) & """>" & oRS(iOption) & "</option>" & CrLf
End If
oRS.MoveNext
Wend
sHTML = sHTML & "</select>" & CrLf
DropDownList = sHTML
Set oRS = Nothing
End Function
</code>
Exempel på användning:
<code>
Response.Write DropDownList(ConnString, "SELECT x, y FROM Tabell", 0, 1, "drNamn", "formelement", "Select..", "#", "", iSelection, "onChange=""document.form1.submit();""", "")
</code>
Förklaring:
sConnectionString* = Tja, en fungerande connectionsträng.
sSQL* = Sqlsträngen såklart.
iValue* = 0 eller 1. Beror på ordningen i select-satsen. Om du har "Select x, y From Blabla.." som sql-sats, och vill ha x som value, så skall det vara 0 alltså.
iOption* = I ovanstående exempel så, om du vill ha y som option, skall denna sättas till 1.
sName = Namnet på dropdownlistan.
sClass = För eventuella stylesheets.
sFirstOption = Om du vill ha ett förstaval som inte finns i databasen.
iFirstValue = För ovanstående.
sSelectedOption = Förvald option
vSelectedValue = Eller förvalt värde. Räcker med den ena.
sJavascript = javascript som hör till elementet.
bEmpty = Returnerar true om listan är tom. Kan vara bra att veta ibland.
*Krävs absolut. sName är väl också praktiskt att ha med, men resten är optional.
Vassego!