Avatar billede krummel Juniormester
19. august 2006 - 10:19 Der er 9 kommentarer og
1 løsning

select og disable en anden

Hvis jeg har to select bokse:
name: "min"
1
2
3

name: "din"
1
2
3

Hvis jeg vælger 1 i "min" så skal "din" disables. Ved valg af 2 eller 3 i "min" skal "din" være enabled. Hvordan gør man det?
Avatar billede roenving Novice
19. august 2006 - 10:54 #1
En rå skitse:

<script type="text/javascript">
function changeSels(sel){
  var f = sel.form, secSel = f.din;
  //if(sel.value == "Alt1"){//der kan vælges mellem at bruge selectedIndex og value !-)
  if(sel.selectedIndex == 1){
    secSel.disabled = false;
  }else{
    secSel.disabled = true;
    secSel.selectedIndex = 0;
  }
}
</script>

<form>
<br>
...<br><br>
<select name="min" onchange="changeSels(this);">
  <option>Vælg type</option>
  <option value="Alt1">Type 1</option>
  <option value="Alt2">Type 2</option>
  <option value="Alt3">Type 3</option>
</select>
<br>
<select name="din" disabled="disabled">
  <option>Vælg type</option>
  <option value="Alt1">Type 1</option>
  <option value="Alt2">Type 2</option>
  <option value="Alt3">Type 3</option>
</select>

<br><br>
...<br>
</form>
Avatar billede mclemens Nybegynder
19. august 2006 - 11:04 #2
Afhængig af behovet kan det forkortes til:

<script type="text/javascript">
function changeSels(sel){
  sel.form.din.disabled=(sel.selectedIndex==0);
}
</script>
Avatar billede mclemens Nybegynder
19. august 2006 - 11:08 #3
Roenving's første skulle nok også
lige vendes en gang hvis du vælger den...
( [Hvis jeg vælger 1 i "min" så skal "din" disables. Ved valg af 2 eller 3 i "min" skal "din" være enabled.  ] Roenving's gjorde det modsat og enablede ved Vælg type, samt valg nr. 2 & 3 )


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

<script type="text/javascript">
function changeSels(sel){
  var f = sel.form, secSel = f.din;
  //if(sel.value == "Alt1"){//der kan vælges mellem at bruge selectedIndex og value !-)
  if(sel.selectedIndex == 0){
    secSel.disabled = true;
  }else{
    secSel.disabled = false;
    secSel.selectedIndex = 0;
  }
}
</script></head>

<body>
<form>
<br>
...<br><br>
<select name="min" onchange="changeSels(this);">
  <option value="Alt1">Type 1</option>
  <option value="Alt2">Type 2</option>
  <option value="Alt3">Type 3</option>
</select>
<br>
<select name="din" disabled="disabled">
  <option value="Alt1">Type 1</option>
  <option value="Alt2">Type 2</option>
  <option value="Alt3">Type 3</option>
</select>
</body></html>
Avatar billede mclemens Nybegynder
19. august 2006 - 11:09 #4
(Blot et par mindre justeringer)
Avatar billede mclemens Nybegynder
19. august 2006 - 11:11 #5
ups 19/08-2006 11:08:08 skulle lige pilles ved en gang mere...
(jeg glemte at flytte den nulstilling af selectedIndex)

<script type="text/javascript">
function changeSels(sel){
  var f = sel.form, secSel = f.din;
  //if(sel.value == "Alt1"){//der kan vælges mellem at bruge selectedIndex og value !-)
  if(sel.selectedIndex == 0){
    secSel.disabled = true;
    secSel.selectedIndex = 0; // Slet evt. denne linje hvis nulstilling skal deaktiveres
  }else{
    secSel.disabled = false;
  }
}
</script>

^ - Sammen med struktur i 19/08-2006 11:08:08
... ellers er der den korte udagave 19/08-2006 11:04:41
Avatar billede krummel Juniormester
19. august 2006 - 11:12 #6
Et par små ændringer og det virker perfekt - super.

Svar så du kan få point
Avatar billede krummel Juniormester
19. august 2006 - 11:12 #7
Det var til roenving - havde ikke set clemens
Avatar billede mclemens Nybegynder
19. august 2006 - 11:14 #8
Jeps, det er Roenvings point, jeg ville bare kaste et
par forslag til justeringer nu vi havde en "rå kode" :o)
Avatar billede roenving Novice
19. august 2006 - 11:14 #9
Velbekomme '-)
Avatar billede roenving Novice
19. august 2006 - 11:23 #10
-- og tak for point ;~}
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