webForumDet fria alternativet

Hur ändrar man i select?

ASP

3 svar · 248 visningar · startad av Draftracer3

Medlem sedan dec. 200353 inlägg
Frågan#1

Om jag har två select en heter stad och en heter ort!

Om jag väljer Sthlm då ska alla orter i sthlm komma... hur gör jag det?

Alltså jag har gjort en databas där det finns en tabel som heter stad.... sen så finns alla orter där och det finns ett fält som heter stad där det e nummer!

till exempel

Id | Namn | Stad
5 | nåntin| 1

Sen gör jag så här när jag skriver ner dem

If RecSet("stad") = 1 then
stad = "Stockholm"
end if

alltså har jag allt men det ända jag saknar är funktionen eller vad det är som gör så att orten byter när man väljer stad!

hoppas ni fatta... annars ett exempel!

Steg ett!
Välj stad Välj ort

Steg två!
(när man valt stad då byts ort automatiskt till dem orten som ligger i den staden)
Sockholm (alla orter i sthlm)

assså jag kan inte förklara men hoppas ni fattar vad jag vill.... såna funktioner finns nästan över allt!

Medlem sedan aug. 20013 824 inlägg
#2

Om du gör en tabell med alla orter i som ser ut engefär så här:

Id  |   Ort        |   StadID   |
--------------------------------
1   |   Askim      |      3     |
2   |   frölunda   |      3     |
--------------------------------

Så gör du bara en sql fråga som ser ut ungefär så här:

"Select ort from tblOrter where StadId = '"& intStadId &"';"

Om det nu va så du menade ;)
Gott nytt år! :bire

Medlem sedan dec. 200353 inlägg
#3

Nej, det va inte så jag menade utan jag menad så här...

1.

<select name="stad">
<här står alla städer>
</select>

<select name="ort">
<här står INGENTING>
</select>

2.

<select name="stad">
<nu har jag valt Stockholm>
</select>

<select name="stad">
<här står alla orter i stockholm>
</select>

Fattar nån?????

Gott nytt år :) förresten

Medlem sedan nov. 20018 492 inlägg
#4

Skapa en tabell där du har alla städer och en med alla orter.

<%
Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM stadtabell ORDER BY stad"
RecSet.Open SQL, Connection
If NOT RecSet.EOF Then
Response.Write("<form><select onChange=""url=this.options[this.selectedIndex].value; if(url){ location.href=url; }"">")
Response.Write("<option value="""">--- Välj stad ---</option>")
Do Until RecSet.EOF
Response.Write("<option value="sidan.asp?stadid=" & RecSet("id") & """>" & RecSet("stad") & "</option>")
RecSet.MoveNext
Loop
Response.Write("</select></form>")
End If
RecSet.Close
Set RecSet = Nothing
%>
<%
If NOT Request("stadid") = "" Then
Set RecSet2 = Server.CreateObject("ADODB.Recordset")
SQL2 = "SELECT * FROM orttabell WHERE stadid = " & Request("stadid") & " ORDER BY ort"
RecSet.Open SQL2, Connection
If NOT RecSet2.EOF Then
Response.Write("<form><select onChange=""url=this.options[this.selectedIndex].value; if(url){ location.href=url; }"">")
Response.Write("<option value="""">--- Välj stad ---</option>")
Do Until RecSet2.EOF
Response.Write("<option value="redirect.asp?ort=" & RecSet("ort") & """>" & RecSet("ort") & "</option>")
RecSet.MoveNext
Loop
Response.Write("</select></form>")
End If
RecSet2.Close
Set RecSet2 = Nothing
End If
%>

Något sådant kanske? :)

251 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)