Avatar billede budda Nybegynder
06. juli 2005 - 22:59 Der er 12 kommentarer og
1 løsning

Dropdown menu

Jeg har 5 chechboxe der hedder type[] med value 1..5 :)
og så har jeg en dropdown menu der hedder ekstrainfo
Det skal være sådan at hvis man ikke har valgt en "type" så skal der stå : Du skal vælge en type for info
Og er der valgt mere end 1 skal der står: Du kan kun tage info fra 1 type

Men nu kommer det sjove
Hvis en type er valgt (eller der blive valgt fra 2 til en) så skal den skifte indholdet så at der er en liste med 3 eks
Lars (value:1)
Mikkel (value:1)
Karsen (value:1)

Nogen der kan hjælpe?
Avatar billede roenving Novice
07. juli 2005 - 01:23 #1
Hvis der kun må vælges en, skal du vel bruge radios og ikke checkboxe ?-)

-- den sidste har jeg ikke gennemskuet eller forstået !-)
Avatar billede budda Nybegynder
07. juli 2005 - 07:57 #2
Det er nemlig der problemet kommer ind.
Det er fordi man kun må vælge ekstreinfo hvis der kun er en checkbox valgt :)

Lyder dumt men det er sådan det skulle være :)
Avatar billede budda Nybegynder
07. juli 2005 - 08:10 #3
Eller kan man gøre sådan at når man vælger en chechbox så tilføjer den nogle linjer i en selectbox? Og fjerner dem igen når man vælger dem fra??
Avatar billede roenving Novice
07. juli 2005 - 11:36 #4
Hvad så med:

<form>
1: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="1"><br>
2: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="2"><br>
3: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="3"><br>
4: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="4"><br>
5: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="5"><br>

Ekstrainfo: <select name="ekstrainfo" style="visibility:hidden;">
  <option>Vælg mulighed</option>
  <option value="Ja">Ja</option>
  <option value="Nej">Nej</option>
</select>
</form>

<script type="text/javascript">
function checkNumChecked(elm){
  var f = elm.form, e = f.elements,numChecked = 0;
  for(i=0;e.length>i;i++){
    if(e[i].name=='type[]'&&e[i].checked)
      numChecked++;
  }
  if(numChecked==1)
    f.ekstrainfo.style.visibility = 'visible';
  else
    f.ekstrainfo.style.visibility = 'hidden';
}
</script>
Avatar billede budda Nybegynder
07. juli 2005 - 16:28 #5
De forskellige felter har forskellige ekstrainfo.
Men tror det vil være smartest hvis den kan tage mere end 1 så den bare tiløjer og fjerner ...
Avatar billede roenving Novice
07. juli 2005 - 16:34 #6
Hvorfor så en dropdown ?-)
Avatar billede budda Nybegynder
07. juli 2005 - 16:43 #7
øøh en selectbox :)
Tilgiv mig det er over 1 år siden jeg sidst har lavet en hjemmeside :)
Avatar billede roenving Novice
07. juli 2005 - 16:46 #8
Jamen ville det så ikke være bedre med en stribe divs, hvor indholdet passende til de enkelte checkboxe var, og som var skjult, og så kunne vises under de rette omstændigheder ?-)
Avatar billede budda Nybegynder
07. juli 2005 - 17:56 #9
Nej det tager for meget plads :)
Det skal helst samles i en nemlig :)

så man kan holde CTRL nede og vælge flere.

For jeg har et PHP script der skal hente de xtra info og så skal det være sådan man tilføjer via en database (det er lavet) mangler det sidste
Avatar billede roenving Novice
07. juli 2005 - 18:09 #10
Fylder for meget ?-)

F.eks.

<style type="text/css">
.infodiv{float:left;display:none;}
</style>

<script type="text/javascript">
function checkNumChecked(elm){
  var f = elm.form, e = f.elements,numChecked = 0,chckdElm=null;
  for(i=0;e.length>i;i++){
    if(e[i].name=='type[]'&&e[i].checked){
      numChecked++;
      chckdElm = e[i];
    }
  }
  if(numChecked==1)
    document.getElementById('info'+chckdElm.value).style.display = 'inline';
  else
    for(i=1;i<6;i++){
      document.getElementById('info'+i).style.display = 'none';
    }
}
</script>

<form>
1: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="1"><br>
2: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="2"><br>
3: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="3"><br>
4: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="4"><br>
5: <input type="checkbox" name="type[]" onclick="checkNumChecked(this)" value="5"><br>
</form>

Ekstrainfo: <div id="info1" class="infodiv">Ekstrainfo om 1</div>
<div id="info2" class="infodiv">Ekstrainfo om 2</div>
<div id="info3" class="infodiv">Ekstrainfo om 3</div>
<div id="info4" class="infodiv">Ekstrainfo om 4</div>
<div id="info5" class="infodiv">Ekstrainfo om 5</div>
Avatar billede budda Nybegynder
07. juli 2005 - 19:23 #11
Ja men har lige fundet ud af det er smartere hvis man kan have info fra alle sammen, og helst i en selectbox
Avatar billede budda Nybegynder
27. november 2005 - 10:01 #12
lukket
Avatar billede roenving Novice
27. november 2005 - 15:28 #13
Tak for hjælpen ,-(
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