Avatar billede mikmakmuk Nybegynder
28. februar 2008 - 10:42 Der er 6 kommentarer og
1 løsning

checke alle af og fra

Hvad er der galt med min lille funktion. Det er meningen at alle cat skal checkes af hvis alle bliver checket og omvendt

function cheche()
{
        var chks = document.getElementsByName("cat");
       
        if(!document.getElementsByName("alle").checked)
        {
        for(i=0,im=chks.length;im>i;i++)
      chks[i].checked = true;
      }
      else{
      for(i=0,im=chks.length;im>i;i++)
      chks[i].checked = false;
      }

}
Avatar billede michael_stim Ekspert
28. februar 2008 - 10:50 #1
Du har et ! for meget.

if(!document.getElementsByName("alle").checked)

if(document.getElementsByName("alle").checked)
Avatar billede mikmakmuk Nybegynder
28. februar 2008 - 10:59 #2
Ikke helt. Så bliver de allesammen unchecked
Avatar billede w13 Novice
28. februar 2008 - 11:14 #3
Hvad gør din funktion da forkert?

Husk i øvrigt at var'e:

for(i=0,im=chks.length;im>i;i++)
skal være:
for(var i=0,im=chks.length;im>i;i++)
Avatar billede roenving Novice
28. februar 2008 - 12:41 #4
getElementsByName fanger en collection, derfor skal du bruge det første element, og så kan den forøvrigt forenkles ganske betydeligt:

function cheche(){
  var chks = document.getElementsByName("cat"), chck = document.getElementsByName("alle")[0].checked;
  for(i=0,im=chks.length;im>i;i++)
      chks[i].checked = chck;
}
Avatar billede mikmakmuk Nybegynder
28. februar 2008 - 13:33 #5
super cool.
Avatar billede roenving Novice
28. februar 2008 - 13:40 #6
-- og den kan endda forenkles yderligere:

function cheche(chck){
  var chks = document.getElementsByName("cat");
  for(i=0,im=chks.length;im>i;i++)
      chks[i].checked = chck;
}

<input type="checkbox" name="alle" onclick="cheche(this.checked);">Check alle

Velbekomme '-)
Avatar billede roenving Novice
05. marts 2008 - 17:39 #7
-- 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