Avatar billede steen_hansen Forsker
03. maj 2003 - 19:00 Der er 15 kommentarer og
3 løsninger

Marker alle checkbokse

Jeg fandt noget kode på http://www.eksperten.dk/spm/255100, men jeg har 2 alternativknapper, som jeg gerne vil have udfører funktionen. Den skal som standard været markeret som "Fravælg alle":

<input type="radio" value="mark" name="mark_all">&nbsp;Markér alle&nbsp;&nbsp;<input type="radio" value="mark" checked name="unmark_all">&nbsp;Fravælg alle

Hvis man trykker på "Markér alle", skal alle markeres automatisk uden at skulle aktiveres v.hj.a. et link. trykker man på "Fravælg alle", skal alle markeringer selvfølgelig fjernes.
Avatar billede steen_hansen Forsker
03. maj 2003 - 19:04 #1
PS: Hvis der er nogen af Jer, der har en konto på ofir.dk, vil I kunne se, at der kun skal trykkes i den ene eller den anden alternativknap, så hhv. markeres/fravælges alle mails.
Avatar billede fangel Nybegynder
03. maj 2003 - 19:04 #2
du skal kende navnene på dine checkboxe, men så kan du også godt! er navnene faste, eller kan de variere?
Avatar billede roenving Novice
03. maj 2003 - 19:09 #3
Sådan?

<script type='text/javascript'>
<!--
    function checkAll() {
        var frme = document.forms.formensNavn.elements;
        for (var i=frme.length-1; i>=0; i-- ) {
            if (  frme[i].type == "checkbox"
              && frme[i].name.substring(0,6) == "delBox"
              ) {
                frme[i].checked = true;
            }
        }
    }
    function unCheckAll() {
        var frme = document.forms.formensNavn.elements;
        for (var i=frme.length-1; i>=0; i-- ) {
            if (  frme[i].type == "checkbox"
              && frme[i].name.substring(0,6) == "delBox"
              ) {
                frme[i].checked = false;
            }
        }
    }
//-->
</script>

<input type="radio" value="mark" name="mark_all" onChange="checkAll()">&nbsp;Markér alle&nbsp;&nbsp;<input type="radio" value="mark" checked name="unmark_all" onChange="unCheckAll()">&nbsp;Fravælg alle

hth
jes
Avatar billede erikjacobsen Ekspert
03. maj 2003 - 19:15 #4
Man kan teste på typen, eller på navnet, eller på begge. Prøv

<script>

function markerAlle(f,t) {
  for (i=0;i<f.elements.length;i++) {
  if (f.elements[i].name.match(/^aa/)) {
    f.elements[i].checked=t;
  }
  }
}

</script>

<form>

<input type="checkbox" name="aa1">
<input type="checkbox" name="a2">
<input type="checkbox" name="aa3">
<input type="checkbox" name="a4">
<input type="checkbox" name="aa5">
<input type="checkbox" name="a6">


<input type="button" value="marker alle" onclick="markerAlle(this.form,true);">
<input type="button" value="fjern alle" onclick="markerAlle(this.form,false);">
</form>
Avatar billede Slettet bruger
03. maj 2003 - 19:18 #5
<html>
<head>
<title>Checkbox - mark all</title>
</head>
<body>
<script language="javascript">
function alterall(f)
{
    for(i=0;f.elements[i];i++)
    {
        e = f.elements[i];
        if(e.type=="checkbox")
        {
            e.checked = (e.checked)?false:true;
        }
    }
}
</script>
<form name="userInfo">
<input type="checkbox" checked name="a0"><br/>
<input type="checkbox" checked name="a1"><br/>
<input type="checkbox" checked name="a2"><br/>
<input type="checkbox" checked name="a3"><br/>
<input type="checkbox" checked name="a4"><br/>
<input type="checkbox" checked name="a5"><br/>
<input type="checkbox" checked name="a6"><br/>
<input type="checkbox" checked name="a7"><br/>
<input type="checkbox" checked name="a8"><br/>
<input type="button" onclick="alterall(this.form)" value="marker"/>
</form>
</body>
</html>
Avatar billede steen_hansen Forsker
03. maj 2003 - 19:48 #6
regin, din ser ud til at virke fint, men jeg vil gerne have radiobuttons:

<radiobutton1> Markér alle  <radiobutton2> Fravælg alle

<checkbox1> Valg 1
<checkbox2> Valg 2
<checkbox3> Valg 3
<checkbox4> Valg 4

Som standard er der ingen af checkboxene, der må være markerede.
Avatar billede steen_hansen Forsker
03. maj 2003 - 19:53 #7
Ok, det er bare at fjerne "checked" fra checkboxen. Men jeg vil gerne have to radiobuttons over checkboxene. Som standard skal alle være fravalgte. Når man trykker på radiobutton "Marker alle" - og intet andet, skal alle markeres.
Avatar billede Slettet bruger
03. maj 2003 - 19:57 #8
Men del lige pts mellem eric, roenvig og jeg...

<html>
<head>
<title>Checkbox - mark all</title>
</head>
<body>
<script language="javascript">
function alterall(f, check)
{
    for(i=0;f.elements[i];i++)
    {
        e = f.elements[i];
        if(e.type=="checkbox")
        {
            e.checked = check;
        }
    }
}
</script>
<form name="userInfo">
<input type="button" onclick="alterall(this.form, true)" value="Marker alle"/>
<input type="button" onclick="alterall(this.form, false)" value="Fravælg alle"/><br/>
<input type="checkbox" checked name="a0"><br/>
<input type="checkbox" checked name="a1"><br/>
<input type="checkbox" checked name="a2"><br/>
<input type="checkbox" checked name="a3"><br/>
<input type="checkbox" checked name="a4"><br/>
<input type="checkbox" checked name="a5"><br/>
<input type="checkbox" checked name="a6"><br/>
<input type="checkbox" checked name="a7"><br/>
<input type="checkbox" checked name="a8"><br/>
</form>
</body>
</html>
Avatar billede steen_hansen Forsker
03. maj 2003 - 19:58 #9
erikjacobsen, din formular virker (næsten) også, men det er kun hver anden checkbox, der bliver markeret?
Avatar billede roenving Novice
03. maj 2003 - 19:58 #10
>>steen

Det var det han ville vise ...
Avatar billede erikjacobsen Ekspert
03. maj 2003 - 19:59 #11
Ja, det er jo på navnet jeg gør det. Forestil dig en dag du
har flere checkboxe end lige dem der skal markeres. Så hellere
lave en navne-konvention.
Avatar billede roenving Novice
03. maj 2003 - 20:04 #12
<html>
<head>
<title>Checkbox - mark all</title>
</head>
<body>
<script language="javascript">
function alterall(f, check)
{
    for(i=0;f.elements[i];i++)
    {
        e = f.elements[i];
        if(e.type=="checkbox")
        {
            e.checked = check;
        }
    }
}
</script>
<form name="userInfo">
<input type="radio" name="markUnMark" onClick="alterall(this.form,true)">&nbsp;Markér alle&nbsp;&nbsp;<input type="radio" checked name="markUnMark" onClick="alterall(this.form,false)">&nbsp;Fravælg alle><br/>
<input type="checkbox" name="a0"><br/>
<input type="checkbox" name="a1"><br/>
<input type="checkbox" name="a2"><br/>
<input type="checkbox" name="a3"><br/>
<input type="checkbox" name="a4"><br/>
<input type="checkbox" name="a5"><br/>
<input type="checkbox" name="a6"><br/>
<input type="checkbox" name="a7"><br/>
<input type="checkbox" name="a8"><br/>
</form>
</body>
</html>

Sådan?
Avatar billede steen_hansen Forsker
03. maj 2003 - 20:09 #13
Ok, det er en "Indbakke", ikke til e-mails, men til beskeder i et lukket community.

Ud for hver besked, er der oplysninger om afsender, dato og tidspunkt for afsendelse m.m. Men her er også en checkbox, så man hakke udvalgte beskeder af og trykke på en slet-knap. Her vil jeg så gerne have, at man kan vælge ALLE beskeder og derefter slette dem på én gang. Eller man skal kunne fravælge alle igen, begge funktioner skal kunne klares med et tryk på en radiobutton. Og der vil så være et vilkårligt antal beskeder i Indboksen.
Avatar billede steen_hansen Forsker
03. maj 2003 - 20:11 #14
erikclausen, læg lige et svar.

roenvig, det er lige nøjagtigt sådan det skal være :o)

I får alle tre 50 point som tak for indsatsen :o)
Avatar billede steen_hansen Forsker
03. maj 2003 - 20:32 #15
SCHLUDDER, erikjacobsen, ikke erikclausen :oD
Avatar billede erikjacobsen Ekspert
03. maj 2003 - 20:40 #16
Nåh, ok da ...
Avatar billede steen_hansen Forsker
03. maj 2003 - 20:45 #17
TAK for hjælpen, drenge! Det var guld værd :o)
Avatar billede roenving Novice
03. maj 2003 - 20:46 #18
Takker for points ;~}
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