webForumDet fria alternativet

flera selected i dropdown

ASP

2 svar · 296 visningar · startad av leox

Medlem sedan mars 200550 inlägg
Frågan#1

Hej WF,

Jag har en dropdown med lite poster i som jag hämtar från en egen tabell i databasen (access db), exempel: (ID är räknare)
Exempel 1 (ID = 1)
Exempel 2 (ID = 2)
Exempel 3 (ID = 3)
Exempel 4 (ID = 4)

Jag har sedan satt multiple på denna dropdown så att man kan välja flera texter och sedan sparar jag ner dem i en kolumn i min databas som heter VarContent, formatet blir enligt följande: 1, 2, 3. Så långt är det frid och fröjd.

Men nu vill jag markera posterna som är sparade visuellt på sidan. Alltså om jag har sparat ner "Exempel 1" och "Exempel 2" så skall dessa sättas som selected för att man ska veta vilka poster man sparat ner, loopen skall dock fortsätta så att om jag valt två texter skall det ändå synas fyra!

Några tips? :) Hoppas någon förstår vad jag menar!

Medlem sedan mars 200550 inlägg
#2

Hej igen,

Hittade en lösning som fungerade tillfälligt verkar det, det blev såhär (saxat ur koden).

do until objrs3.EOF

'hämtar fältet VarContent ifrån databasen.
myString = objrs("VarContent")
'Kollar om TextID:t finns i VarContent
If InStr(myString, ""& objrs3("TextID")&"") Then

response.write "<option selected=""selected"" value="""& objrs3("TextID")&""">&nbsp;&nbsp; "&objrs3("PageName")&"</option>"

Else

response.write "<option value="""& objrs3("TextID")&""">&nbsp;&nbsp; "&objrs3("PageName")&"</option>"
		
End If 
objrs3.movenext
Medlem sedan dec. 19996 721 inlägg
#3

Det kommer att fungera, så länge TextID håller sig mellan 0 och 9. Sedan kommer myString="12,34,56" att matcha på TextId 1,2,3,4,5,6,12,34 och 56. Släng på ett par komman runt båda strängarna, så blir det korrekt.

myString="," & replace(objrs("VarContent")," ","") & "," 'Tar även bort eventuella mellanslag
If InStr(myString, ","& objrs3("TextID")&",")>0 then

En betydligt mer korrekt lösning är att inte lagra flera värden i samma kolumn, utan spara dem i en extra tabell, ett värde per kolumn.

Läs gärna på om tomsträngskonkatenering

298 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
161 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
162 ms — ändringar (db)