aleborgMedlem sedan jan. 20012 962 inlägg
Jag misstänker att jag måste blanda i javascript för att lyckas med det här:
Jag har två selectboxar, ena med namn på länder, den andra med städer.
I en databas har jag två tabeller:
Country
--CountrID
--Country_Name
City
--CityID
--City_Name
--City_Bel (anger vilket land det tillhör, dvs landets ID)
Tanken är att när man byter land så skall selectboxen med städer ändras och fyllas med dom städer som tillhör landet, utan att sidan laddas om!
Är det möjligt?
------------------
Data-Doktorn
Min egen musik!
Mitt coverband
@ndersMedlem sedan juni 200026 914 inlägg
Du misstänker alldeles rätt. Jag hade använt mig av asp för att bygga upp ett dynamiskt javascript, som du triggar vid onchange av landboxen.
Hur man ändrar innehåll i en selectbox diskuteras med jämna mellanrum i javascriptforumet, så sök lite där och ta reda på hur javascriptet ska se ut.
Mvh,
------------------
Don't panic!
[Redigerat av @nders den 05 dec 2001]
aleborgMedlem sedan jan. 20012 962 inlägg
Du har inte något exempel? Kollade lite i javascript forumet, men dom jag hittade kunde jag inte komma överfund med hur man skulle få ASP koden att passa in, är ingen höjdare på javascript än...
------------------
Data-Doktorn
Min egen musik!
Mitt coverband
CatZMedlem sedan jan. 20022 341 inlägg
Verkar ju faktiskt som om det inte är någon som verkligen vet hur man ska göra detta. Jag är ute efter samma sak men har inte hittat någon information om just detta någonstans!
PatrikBMedlem sedan mars 20002 713 inlägg
Om du inte ska ladda om sidan ser jag nästan endast Remote Scripting som en lösning .....annars torde du få lov att skicka en jäkla massa data till klienten (alla länder + städer)
Sök på Remote Scripting då jag själv inte alls är hemma inom det området :(
Har gjort ngt liknande fast med mycket lite data till klienten
<html>
<head>
<title>dynamiska menyer i javascript</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<SCRIPT language="javascript">
function boxData(sText, vValue){
this.text = sText;
this.value = vValue;
}
var vMan1 = new Array();
// -- populeras med asp. det är dessa arrayer som ska populeras i andra selectboxen
// beroende på selectbox1 value --
vMan1[0] = new boxData("stad 1 land 1",1);
vMan1[1] = new boxData("stad 2 land 1",2);
vMan1[2] = new boxData("stad 3 land 1",3);
vMan1[3] = new boxData("stad 4 land 1",4);
var vMan2 = new Array();
vMan2[0] = new boxData("stad 1 land 2",1);
vMan2[1] = new boxData("stad 2 land 2",2);
vMan2[2] = new boxData("stad 3 land 2",3);
vMan2[3] = new boxData("stad 4 land 2",4);
// -- slut populeringen av arryer med asp --
function populateBox(obj, icase){
// alert(icase);
igr = parseInt(icase);
vgr = eval("vMan" + igr);
if (igr>=1){
obj.length = (vgr.length);
for(n=0;n<vgr.length;n++){
obj.options[n].value = vgr[n].value;
obj.options[n].text = vgr[n].text;
}
}else{
obj.length = 1;
for(n=0;n<obj.length;n++){
obj.options[n].value = 0;
obj.options[n].text = obj.options[n].text;
}
obj.selectedIndex = 1;
}
}
</SCRIPT>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="">
<select name="select" onChange="populateBox(document.form1.select2,this.options[selectedIndex].value);">
<option value="0" selected>valj land</option>
<option value="1">land 1</option>
<option value="2">land 2</option>
</select>
<select name="select2">
<option value="0" selected>Inget land valt</option>
</select>
</form>
</body>
</html>
cya,
PatrikB
ToonsterMedlem sedan feb. 20001 546 inlägg
Sedan finns ytterligare en modell, nämligen att du skapar Javascript koden i ASP scriptet, och fyller i arrayerna för de två kombinationsrutorna, från databasen.
/T
cupyMedlem sedan apr. 2002300 inlägg
CatZMedlem sedan jan. 20022 341 inlägg
Toonster skrev:
Sedan finns ytterligare en modell, nämligen att du skapar Javascript koden i ASP scriptet, och fyller i arrayerna för de två kombinationsrutorna, från databasen.
/T
Jo och hur gör man det ? :)
PatrikBMedlem sedan mars 20002 713 inlägg
kika på mitt script ovan.
Arrayerna kan populeras med javascript + selectboxen med de olika "länderna".
Testa att få det att funka med asp kod. Funkar det inte är det bara att återkomma så hjälper vi dig
aleborg:
Har du fått det att funka??
cya,
PatrikB