Avatar billede eyes Nybegynder
11. december 2004 - 18:13 Der er 5 kommentarer og
1 løsning

Selectboks relation

nogen der kan hjælpe med dette?
jeg vil gerne have at den ene selectboks bestemmer over indhold i den anden.

<script>
function change(el);
if (el.value == Human) {
  document.all.id7.style.display='none';
  document.all.id8.style.display='none';
}
if (el.value == Nightelf) {
  document.all.id2.style.display='none';
  document.all.id3.style.display='none';
  document.all.id4.style.display='none';
}
if (el.value == Dwarf) {
  document.all.id2.style.display='none';
  document.all.id8.style.display='none';
}
if (el.value == Gnome) {
  document.all.id4.style.display='none';
  document.all.id5.style.display='none';
  document.all.id7.style.display='none';
  document.all.id8.style.display='none';
}
}
</script>


<select name="boks1" style="width:150" onChange="change(this);">
      <option value="Human">Human</option>
      <option value="Nightelf">Nightelf</option>
      <option value="Dwarf">Dwarf</option>
      <option value="Gnome">Gnome</option>
</select>

    <select name="select" style="width:150">
      <option value="Warrior" id="id1">Warrior</option>
      <option value="Warlock" id="id2">Warlock</option>
      <option value="Mage" id="id3">Mage</option>
      <option value="Paladin" id="id4">Paladin</option>
      <option value="Priest" id="id5">Priest</option>
      <option value="Rogue" id="id6">Rogue</option>
      <option value="Hunter" id="id7">Hunter</option>
      <option value="Druid" id="id8">Druid</option>
    </select>

Evt. hvis i har et fungerende eksempel.

Det er kun en vej Boks1 --> Boks2
Avatar billede skovenborg Nybegynder
11. december 2004 - 18:17 #1
Avatar billede eyes Nybegynder
11. december 2004 - 18:34 #2
kan det ikke løses nemmere, altså så man undgår redundant data
Avatar billede skovenborg Nybegynder
11. december 2004 - 18:56 #3
måske, men det er skam ikke så svært, og ikke noget der skader at bruge. Hvis du ikke kan lide ovenstående script kan du måske bedre bruge dette:
<script type="text/javascript">
  var selectArr = new Array();
  selectArr["Human"] = ["Warrior","Warlock","Mage","Paladin","Priest","Rogue"];
  selectArr["Nightelf"] = ["Warrior","Priest","Rogue","Hunter","Druid"];
  selectArr["Dwarf"] = ["Warrior","Mage","Paladin","Priest","Rogue","Hunter"];
  selectArr["Gnome"] = ["Warrior","Warlock","Mage","Rogue"];
 
  function change(val,selbox) {
      selbox.length = 0;
      arr = selectArr[val];
      if (arr) {
            for (i=0;i<arr.length;i++) {
                  opt = new Option(arr[i],arr[i]);
                  selbox[i] = opt;
            }
      }
  }
</script>

<form>
<select name="boks1" style="width:150px" onChange="if (this.selectedIndex > 0) {change(this.value,this.form.select1);}">
      <option value="">Vælg Race</option>
      <option value="Human">Human</option>
      <option value="Nightelf">Nightelf</option>
      <option value="Dwarf">Dwarf</option>
      <option value="Gnome">Gnome</option>
</select>

    <select name="select1" style="width:150px">
      <option value="Warrior">Warrior</option>
      <option value="Warlock">Warlock</option>
      <option value="Mage">Mage</option>
      <option value="Paladin">Paladin</option>
      <option value="Priest">Priest</option>
      <option value="Rogue">Rogue</option>
      <option value="Hunter">Hunter</option>
      <option value="Druid">Druid</option>
    </select>
</form>
Avatar billede roenving Novice
18. december 2004 - 17:07 #4
Fandt du ud af det ?-)
Avatar billede eyes Nybegynder
18. december 2004 - 22:27 #5
ja virker perfekt skovenborgs svar. ændrede lidt i det.

smid nogle svar
Avatar billede skovenborg Nybegynder
18. december 2004 - 23:38 #6
willbekommen der (eller hvad kasus det nu er) Herren :-)
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