Avatar billede blackscorpion Nybegynder
20. september 2005 - 09:20 Der er 9 kommentarer og
1 løsning

Vise input felt alt efter valg i form.

Hej Eksperter.

har set flere steder, at når men f.eks. vælger ja til et eller andet, dukker der 1 eller flere input/textarea osv. felter frem.

hvordan laves det?
Avatar billede mm12010 Nybegynder
20. september 2005 - 09:30 #1
det kunne gøres sådan:

<form name="" method="" action="">
  <input type="checkbox" name="checkbox" value="checkbox" onclick="this.form.tekstfelt.style.display=(this.checked)?'inline':'none';">vis tekstfelt<br>
  <input name="tekstfelt" type="text" value="tekstfelt" style="display:none;">
</form>
Avatar billede blackscorpion Nybegynder
20. september 2005 - 09:32 #2
hmm tester lige.
Avatar billede blackscorpion Nybegynder
20. september 2005 - 09:36 #3
super nice, men er der ikke en nemmere måde end at skulle tilføje en ekstra "this.form.tekstfelt2.style.....">

altså.

<form name="" method="" action="">
  <input type="checkbox" name="checkbox" value="checkbox" onclick="this.form.tekstfelt.style.display=(this.checked)?'inline':'none';this.form.tekstfelt2.style.display=(this.checked)?'inline':'none';">vis tekstfelt<br>
  <input name="tekstfelt" type="text" value="tekstfelt" style="display:none;"><br>
  <textarea name="tekstfelt2" style="display:none;"></textarea>
</form>

for at vise flere felter?

eller er det bare mig der ikke må være doven her til morgen. :D
Avatar billede blackscorpion Nybegynder
20. september 2005 - 09:37 #4
og virker den f.eks. også på en select boks?
Avatar billede blackscorpion Nybegynder
20. september 2005 - 09:41 #5
hmm lige pt ser den ikke ud til at virke på en select. :(

<form name="" method="" action="" style="margins:0px">
  <select name="test">
  <option value="nej">Nej</option>
  <option value="ja" onsclick="this.form.tekstfelt.style.display=(this.checked)?'inline':'none';this.form.tekstfelt2.style.display=(this.checked)?'inline':'none';">Ja</option>
  </select>
  <input name="tekstfelt" type="text" value="tekstfelt" style="display:none;"><br>
  <textarea name="tekstfelt2" style="display:none;"></textarea>
</form>
Avatar billede mm12010 Nybegynder
20. september 2005 - 09:48 #6
nej så skal det laves lidt om - her er en lille combo:

<script type="text/javascript">
function togInput(frm,val){
    antalFelter=3
    for(i=1;i<=antalFelter;i++) frm.elements['tekstfelt'+i].style.display=(val)?'inline':'none';
}
</script>
<form name="" method="" action="">
  vis tekstfelter?
  <select name="test" onchange="togInput(this.form,this.selectedIndex);">
    <option value="nej">Nej</option>
    <option value="ja">Ja</option>
  </select>
  <input type="checkbox" name="checkbox" value="checkbox" onclick="togInput(this.form,this.checked);">vis tekstfelter<br>
  <input name="tekstfelt1" type="text" value="tekstfelt" style="display:none;"><br>
  <input name="tekstfelt2" type="text" value="tekstfelt" style="display:none;"><br>
  <input name="tekstfelt3" type="text" value="tekstfelt" style="display:none;"><br>
</form>
Avatar billede blackscorpion Nybegynder
20. september 2005 - 09:53 #7
okey det der kan jeg snilt bruge, da det kun er på select bokse jeg skal have det til at poppe frem. :D

f.eks. hvis man vælger at man har kørekort.
at man så kan vælge type, osv. :D

så smid et svar. :D
Avatar billede mm12010 Nybegynder
20. september 2005 - 09:55 #8
svar herfra :-)
Avatar billede blackscorpion Nybegynder
20. september 2005 - 09:56 #9
lige et sidste spørgsmål.. hvordan undgår jeg at den tager pladsen, hvis det f.eks. skal være midt i en form??

eks:

<script type="text/javascript">
function togInput(frm,val){
    antalFelter=3
    for(i=1;i<=antalFelter;i++) frm.elements['tekstfelt'+i].style.display=(val)?'inline':'none';
}
</script>

<form name="" method="" action="">
  <input type="text" name="bla"><br>
  Vis tekstfelter : <select name="test" onchange="togInput(this.form,this.selectedIndex);">
    <option value="nej">Nej</option>
    <option value="ja">Ja</option>
  </select>
  <input type="checkbox" name="checkbox" value="checkbox" onclick="togInput(this.form,this.checked);">vis tekstfelter<br>
  <input name="tekstfelt1" type="text" value="tekstfelt" style="display:none;"><br>
  <input name="tekstfelt2" type="text" value="tekstfelt" style="display:none;"><br>
  <input name="tekstfelt3" type="text" value="tekstfelt" style="display:none;"><br>
  <input type="text" name="bla2"><br>
</form>
Avatar billede blackscorpion Nybegynder
20. september 2005 - 10:00 #10
never mind, det hele skal alligevel være i en tabel, og der er problemet der ikke. :D
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