webForumDet fria alternativet

selected multiple selectlist

3 svar · 245 visningar · startad av K@llen

K@llenMedlem sedan mars 20032 654 inlägg
#1

Hej,

jag hämta ett gäng personer från en tabell i en databas. Dessa presenteras med namn och medlemsId:et blir selectlistans value.

 response.write "<select name=""toUserList"" size=""2"" multiple>"

        for i = 0 to ubound(arrRecords, 2)
    
            memberId = arrRecords(0,i)
            firstName = trim(arrRecords(1,i))
            lastName = trim(arrRecords(2,i))
   
            response.write "<option value=""" & memberId & """>" & firstName & " " & lastName & "</option>"

        next

response.write "</select>"

Sedan skickar jag besökaren till en sida för förhansgranskning, där jag presenterar vad denne skrivit, samt vilka personer som blivit valda. Väljer besökaren då "ändra" kommer han/hon tillbaka till formuläret, men då ska givetvis valen i selectlistan vara förmakrerade (selected). Men jag kommer inte på något bra sätt att jämföra den kommaseparerade listan (eller arrayen) jag har från formuläret med aktuellt memberId i for-loopen.

Hur gör jag denna jämförelse på ett smart sätt?

J.N.Medlem sedan apr. 20031 660 inlägg
#2

HEJ!

Om du ska göra det i samma kod som du markerar vilka du väljer får du själv bestämma, det kan bli lite oöverskådligt.

När arrayen med alla får en träff i arrayen med den första valda, hoppar du vidare till nästa valda, sedan hoppar huvudloopen till sin nästa.

@ndersMedlem sedan juni 200026 914 inlägg
#3

Re: selected multiple selectlist

K@llen skrev:

Hur gör jag denna jämförelse på ett smart sätt?

Så här brukar jag göra:

  1. Se till att alla id:n har komma före och efter. Om du nu har en kommaseparerad lista, lägg till ett kommatecken före och ett efter.
  2. If instr(strLista, "," & memberId & ",") > 0 Then

Mvh,

K@llenMedlem sedan mars 20032 654 inlägg
#4

Tack @nders! :)

Genererad på 374 ms · cache AV · v20260730165559-full.f96bc7eb