Avatar billede phpbegynder2004 Nybegynder
23. august 2006 - 19:00 Der er 5 kommentarer og
1 løsning

Vis <div> ved klik på checkbox

Hej,

Jeg har nedenstående javascript som virker udemærket.
Det fungerer sådan, at hvis man sætter hak i checkbox 1 vil div 1 blive synlig.
Hvis man sætter hak i checkbox 2 vil div 2 blive synlig.

Dog irriterer det mig, at jeg bliver ved med at gentage funktionen (toggleSubmit) hele tiden under et nyt navn. Er det ikke muligt blot at have en toggleSubmit(chkbox) og bruge den?

Her er koden:

<script type="text/javascript">
    //<![CDATA[
    function toggleSubmit(chkbox)
    {
      var textarea = document.getElementById('1');
      textarea.style.display = (chkbox.checked) ? 'block' : 'none';
    }
    function toggleSubmit2(chkbox)
    {
      var textarea = document.getElementById('2');
      textarea.style.display = (chkbox.checked) ? 'block' : 'none';
    }
    //]]>
    </script>

<input name="nummer1" type="checkbox" value="ja" onclick="toggleSubmit(this);">

<input name="nummer2" type="checkbox" value="ja" onclick="toggleSubmit2(this);">

<div id="1" style="display:none;">
Vis mig!
</div>

<div id="2" style="display:none;">
Vis mig selvom jeg er nummer to!
</div>
Avatar billede pidgeot Nybegynder
23. august 2006 - 19:09 #1
Send id'et med som en parameter:

<script type="text/javascript">
    //<![CDATA[
    function toggleSubmit(chkbox,id)
    {
      var textarea = document.getElementById(id);
      textarea.style.display = (chkbox.checked) ? 'block' : 'none';
    }
    //]]>
    </script>

<input name="nummer1" type="checkbox" value="ja" onclick="toggleSubmit(this,'1');">

<input name="nummer2" type="checkbox" value="ja" onclick="toggleSubmit(this,'2');">

<div id="1" style="display:none;">
Vis mig!
</div>

<div id="2" style="display:none;">
Vis mig selvom jeg er nummer to!
</div>
Avatar billede mclemens Nybegynder
23. august 2006 - 19:29 #2
((( Et par finpudsninger ...
.getElementById("d"+id);
...
<div id="d1"
...
<div id="d2"
(ingen id med tal først) )))
Avatar billede phpbegynder2004 Nybegynder
23. august 2006 - 19:44 #3
Super fedt!
Mange tak!
Læg et svar pidgeot.

Og hvis mclemens vil have en lille bid af kagen er du også velkommen til at lægge et.
Avatar billede pidgeot Nybegynder
23. august 2006 - 20:28 #4
Et stk. svar er på vej :)
Avatar billede mclemens Nybegynder
23. august 2006 - 20:31 #5
Næh, kast til pidgeot...
det var bare et hint :o)
Avatar billede roenving Novice
24. august 2006 - 00:27 #6
-- men man skal vel lige gøre opmærksom på, at det rent faktisk ikke er tilladt at have identifiers, der starter med andet end bogstaver (a-z) og _ (underscore), og dette gælder for både javascript og id'er i html (at der så er en enkel lille browser, der accepterer dette, kan give anledning til noget dårlig kode, hvis det er den browser, man tester med !-)
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