Avatar billede mbiegel Nybegynder
03. juni 2009 - 19:44 Der er 1 kommentar og
1 løsning

Dynamic select

Jeg mangler et script/hjælp til programmering af et, som skal kunne dette.

Når du vælger eks. et teleselsskab eks. TDC (i boks 1) skal der komme download data i boks 2 og upload data i boks 3.

I boks 2 er det de downloadshastigheder som TDC tilbyder eks (boks 2):

1024 kbit/s
2048 kbit/s
4096 kbit/s

Og i uploadsboksen skal der eks komme (boks 3):

256 kbit/s
512 kbit/s
1024 kbit/s

Vælger man Telia kommer der eks.

Download (boks 2):

512 kbit/s
1024 kbit/s

Upload (boks 3:
128 kbit/s
256 kbit/s
512 kbit/s

Sådan et script fik jeg hjælp til at lave sidste år af roenving :) - men dette skal kunne noget mere. Man skal eks. kunne gemme sit teleselsskab eks. TDC og sin hastighed eks. 4096 kbit/s i download og 512 kbit/s i upload. Så ligeså snart formen loades ville de værdier være selected. Og valuen skal kunne være en anden, her ville jeg gerne have valuen til at være 4096 og 512 (uden kbit/s). Hvis man ikke gemmer / bruger "selected", skal det bare være som ovenover. Man skal også kunne trække valuen ud fra selsskab, her skulle valuen gerne være eks. tdc ved TDC.

Her er dette script vi kom frem til sidste år.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>

<title>Skift flere selects</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
html,body{height:100%;margin:0px;border:0px;padding:0px;font-family:tahoma,verdana,arial,sans-serif;font-size:small;}
</style>
<script language="javascript" type="text/javascript">
var sp = [];
sp[sp.length] = [ ["1024 kbit/s","2048 kbit/s","4096 kbit/s"], ["256 kbit/s","512 kbit/s","1024 kbit/s"] ];
sp[sp.length] = [ ["512 kbit/s","1024 kbit/s"], ["128 kbit/s","256 kbit/s","512 kbit/s"] ];
sp[sp.length] = [ ["7200 kbit/s","2048 kbit/s","4096 kbit/s"], ["256 kbit/s","512 kbit/s","1024 kbit/s"] ];

function showSpeeds(elm){
  var sels = [elm.form.download, elm.form.upload];
sels[0].length = 1;
  sels[1].length = 1;
  var arrNum = elm.selectedIndex-1;
  if(arrNum>=0){
    for(i=0;2>i;i++){
      for(j=0,jm=sp[arrNum][i].length;jm>j;j++){
        sels[i].options[sels[i].length] = new Option(sp[arrNum][i][j],j);//det sidste ,j giver en value på optionen
        //denne value kan måske undværes, hvis du bare skal bruge værdien direkte
      }
    }
  }
}
window.onload = function(){
  showSpeeds(document.getElementById("selskab"));
}
</script>
</head>
<body>
<form id="minForm" name="minForm">
Vælg selskab:<br>
<select name="selskab" id="selskab" onchange="showSpeeds(this);">
    <option value="">-- Vælg her --<br>
    <option value="TDC">TDC<br>
    <option value="Telia">Telia<br>
    <option value="3">3<br>
</select>
<br>Vælg downloadhastighed:<br>
<select name="download" id="download">
    <option value="">-- Vælg her --<br>
</select>
<br>Vælg uploadhastighed:<br>
<select name="upload" id="upload">
    <option value="">-- Vælg her --<br>
</select>
<br>
<input type="submit" value="send">
</form>

</body>

</html>

Men det skal som sagt kunne loades ind som selected i starten og så skal der være nogle andre valuer.

Kan det lade sig gøre?
Avatar billede mbiegel Nybegynder
11. juni 2009 - 18:04 #1
Ingen der kan?

Hvad skal en evt. have for scriptet?
Avatar billede mbiegel Nybegynder
01. juli 2009 - 20:53 #2
slut
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