Avatar billede cliche Nybegynder
14. oktober 2001 - 12:58 Der er 3 kommentarer og
2 løsninger

Dropdown var.

Hey jeg har 3 dropdown menuer

1: Mærke
2: Model
3: pris

Nu bliver det hentet ud af en db, men hvordan kan jeg gøre at når mærket er valgt i dropdown menu 1, at 2, så kommer med modellerne for det som er valgt i 1?

Havde tænkt på noget ala den her var

var(1)
mærke = ford
  model(1) = scorpio
  model(2) = mondeo
  model(3) = fiesta
  model(4) = osv...

var(2)
mærke = opel
  model(1) = corsa
  model(2) = osv...

Og så skal det fortsætte derud af, men hvordan får jeg så dropdown menuen til at opdatere sig når man har valgt mærket?

håber det er beskrevert ok.
Avatar billede neuro Nybegynder
14. oktober 2001 - 13:15 #1
du kan bruge eventen OnChange på din <select>..

<select onChange=\'java script:enfunktion();\'>
<option value=\'x\'>y
</select>

din funktion som bliver kaldt på onChange skal så opdaterer din næste selectbox.
Avatar billede jakoba Nybegynder
14. oktober 2001 - 13:15 #2
Det nemmeste er at submitte formularen hvergang der vælges noget i en \'overordnet\' meny, og så lade serveren generere en ny side med et nyt sæt underordnede dropdown bokse udfra databasen.
Desværre giver det brugeren et servervait der er lidt irriterende.

Du kan også dende alle de alternative dropdonbokse med i første side og så reorganisere dine dropdownbokse med javascript.
som her:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp107085.html
Det skulle være rimelig nemt at gøre radiknap handlingen til en onselect handling i den overordnede dropdownboks.

Det er langt hurtigere. men hvis databasen er stor begynder din loadtid for siden også at stige, og kan blive så stor at serverløsningen er bedst.

mvh JakobA
Avatar billede cliche Nybegynder
14. oktober 2001 - 13:20 #3
yeah bliver nok asp løsningen takker.
Avatar billede neuro Nybegynder
14. oktober 2001 - 13:23 #4
du kan jo også bruge vbArrays i JavaScript, så er du fri for at submitte din formular hver gang . Det er jo alt andet lige bedre ikke at skulle reloade siden hver gang man vælger noget :)
Avatar billede roenving Novice
14. oktober 2001 - 14:07 #5
Det kan faktisk også laves (og så svært er det heller ikke) men det kommer lige til at koste noget scripting og f.eks. en layer at styre det:

<script type=text/javascript>
var drops = new Array();
var drops[0] = new Array(\"ford\",\"scorpio\",\"mondeo\",\"fiesta\");
var drops[1] = new Array(\"opel\",\"corsa\");
·
·
·

function makeDrop2(){
  for (i=0;i<drops.length;i++){
    if (drops[i][0]==document.formNavn.Drop1[document.formNavn.Drop1.selectedIndex].value){
      html=\"<html><body><select name=Drop2>\";
      for (j=1;j<drops[i].length;j++){
        html+=\"<option value=\"+drops[i][j]+\">\"+drops[i][j];
      }
      html+=\"</select></body></html>\";
      document.all[minSelectDiv].innerHTML=html;
    }
  }
}
 
</script>

Og så skal du selvfølgelig have en:

<div id=\"minSelectDiv\"></div>

hvor din select skal være.

hth
jes

PS. Helt og aldeles utestet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester