Avatar billede heyn Nybegynder
22. april 2010 - 12:18 Der er 6 kommentarer og
1 løsning

Hvordan skjuler man et < option> i et <select>

Hej Eksperter.

Jeg har en form som indeholder 2 <select> 'gruppe' og 'aktivitet'.
Nu ønsker jeg at <option>'s i 'aktivitet' skal variere i forhold til hvilken <option> man har valgt i 'gruppe'.
Lidt lige som når man på eksperten.dk vælger kategori til det spørgsmål man vil stille.

Jeg har kæmpet længe med det men kan ikke få det til at fungere.
Har nogen en god ide?

Mvh Christian
Avatar billede claes57 Ekspert
22. april 2010 - 12:50 #1
du placerer en span med en id der, hvor #2 skal være
og afhængig af valg i #1, så kalder du javascript onclick, der skriver hele #2 som de skal se ud og placerer det med id.innerhtml
Avatar billede majbom Novice
22. april 2010 - 13:41 #2
Avatar billede heyn Nybegynder
22. april 2010 - 14:46 #3
Jeg forstår jer ikke helt, og jeg kan ikke Ajax.
Grundlæggende har jeg følgende:

<form action="index.php">
  <select id="gruppe" name="gruppe">
    <option value="0" selected="selected">V&aelig;lg en gruppe</option>
    <option value="1">Gruppe 1</option>\n";
    <option value="2">Gruppe 2</option>\n";
  </select>
  <select id="aktivitet" name="aktivitet" disabled="disabled">
    <option value="0" selected="selected">V&aelig;lg en aktivitet</option>
    <option value="1">Aktivitet 1</option>\n";
    <option value="2">Aktivitet 2</option>\n";
    <option value="3">Aktivitet 3</option>\n";
  </select>
  <input type="submit" name="vis_aktivitet" value="Vis aktivitet">
</form>

F.eks. kunne aktivitet 1 og 2 tilhøre gruppe 1 mens aktivitet 3 tilhører gruppe 2.
Hvis gruppe 1 vælges skal aktivitetsfeltet ikke længere være disabled og aktivitet 1 og 2 skal være tilgængelig. Hvis man skifter til gruppe 2 skal aktivitet 3 være tilgængelig. skifter man tilbage til 'vælg gruppe' skal aktiviteterne atter disables

Mvh Christian
Avatar billede majbom Novice
22. april 2010 - 15:30 #4
hvis det ikke skal være dynamisk kan du lave arrays i javascript med de værdier der nu skal være, f.eks.

var arr_select = new Array();
arr_select[] = new Array("1", "Gruppe 1");
arr_select[] = new Array("2", "Gruppe 2");
arr_select[] = new Array("3", "Gruppe 3");
var arr_gruppe1 = new Array();
arr_gruppe1[] = new Array("1", "Aktivitet 1");
arr_gruppe1[] = new Array("2", "Aktivitet 2");
var arr_gruppe2 = new Array();
arr_gruppe2[] = new Array("3", "Aktivitet 3");
arr_gruppe2[] = new Array("4", "Aktivitet 4");
var arr_gruppe3 = new Array();
arr_gruppe3[] = new Array("5", "Aktivitet 5");
arr_gruppe3[] = new Array("6", "Aktivitet 6");

når der så bliver valgt gruppe i den første select, fylder du select nr. 2 med data fra arrayet "arr_gruppe1", hvor 1 er det tal der er i value på den option der blev valgt i den første select...
Avatar billede heyn Nybegynder
02. september 2010 - 01:07 #5
Tak for hjælpen - Smid et svar
Avatar billede majbom Novice
02. september 2010 - 07:18 #6
kommer her, kunne det bruges?
Avatar billede majbom Novice
02. september 2010 - 16:31 #7
tfp :)
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