jag har två listrutor, län och stad
I den första så väljer du vilket län
I den andra så ska alla städer i det länet finnas
om jag väljer ett ändra län så ska det länets städer finnas iställe i stad listrutan.
alla städer finns i en databas
7 svar · 278 visningar · startad av nille99
jag har två listrutor, län och stad
I den första så väljer du vilket län
I den andra så ska alla städer i det länet finnas
om jag väljer ett ändra län så ska det länets städer finnas iställe i stad listrutan.
alla städer finns i en databas
Skall detta ske utan att ladda om sidan?
jepp
I så fall måste du lagra allt data på klienten och skriva javaskript för att hantera skiftandet. Jag flyttar från ASP till Javaskript-forumet.
<script language="JavaScript" type="text/javascript">
var stader=new Array();
stader[0]=new Array("Stad 1 Län 1","Stad 2 Län 1");
stader[1]=new Array("Stad 1 Län 2","Stad 2 Län 2","Stad 3 Län 2");
stader[2]=new Array("Stad 1 Län 3","Stad 2 Län 3");
function uppdateraStad(obj){
obj.stad.length=stader[obj.lan.selectedIndex].length;
for(var i=0;i<stader[obj.lan.selectedIndex].length;i++){
obj.stad[i].value=stader[obj.lan.selectedIndex][i];
obj.stad[i].text=stader[obj.lan.selectedIndex][i];
}
}
</script>
<form>
<select name="lan" onChange="uppdateraStad(this.form);">
<option value="Län 1">Län 1</option>
<option value="Län 2">Län 2</option>
<option value="Län 3">Län 3</option>
</select>
<select name="stad">
<option value="Stad 1 Län 1">Stad 1 Län 1</option>
<option value="Stad 2 Län 1">Stad 2 Län 1</option>
</select>
</form>
Sedan är det bara att fylla på i koden med data från din databas via ASP.
Hej
hur ska jag få in städer från databasen till listrutan "stad "
när jag väljer tex alternativ tre i listruta "län"
SQL = "SELECT * From stad"
Set RecSet5 = Connect.Execute(SQL)
stad= "stad"
Do Until RecSet5.EOF
stad = stad & _
RecSet5("namn") & "'"
RecSet5.MoveNext
Loop
RecSet5.close
%>
<script language="JavaScript" type="text/javascript">
var stader=new Array();
stader[0]=new Array("Stockholm","Malmö");
stader[1]=new Array("Visby","Norrtälje","falun");
stader[2]=new Array(<%=stad%>);
function uppdateraStad(obj){
obj.stad.length=stader[obj.lan.selectedIndex].length;
for(var i=0;i<stader[obj.lan.selectedIndex].length;i++){
obj.stad[i].value=stader[obj.lan.selectedIndex][i];
obj.stad[i].text=stader[obj.lan.selectedIndex][i];
}
}
</script>
Jag lämnar över det till ASP-forumet igen så får du det på optimalt vis.
jag klarade av det själv
SQL = "SELECT * From stad"
Set RecSet5 = Connect.Execute(SQL)
Do Until RecSet5.EOF
if stad = "" then
stad = "'" & RecSet5("namn") & "'"
else
stad = stad & "," & "'" & RecSet5("namn") & "'"
end if
s
RecSet5.MoveNext
Loop
RecSet5.close
%>