Avatar billede bms Nybegynder
18. maj 2001 - 20:47 Der er 7 kommentarer og
1 løsning

Checkbokse

Hej - jeg har lavet mig et linksystem, hvor jeg i mit admin-modul kan godkende indsendte links. De listes i en lang række under hinanden og er i øvrigt lavet i ASP. Ved hvert link er der en checkboks som man kan afkrydse - og når jeg endelig godkender linksene (så de bliver postet på mit site) så accepteres alle link der er afkrydset i denne checkboks.

Nu sidder jeg for sjov og leger med lidt javascript - jeg ville gerne have en checkboks øverst - en slags \"Afkryds alle links\"-checkboks.

Nedenstående kode er snuppet fra hotmail hvor de bruger en sådan, men bemærk at den afkrydser ALLE checkbokse i formen. Nu har jeg imidlertid flere checkbokse, og det er derfor kun meningen at \"accepter\"-checkboksene skal afkrydse.

Derfor - kan man på en eller anden måde omskrive nedenstående kode - så den ikke afkrydser alle check-bokse men kun nogle bestemte.

Det skal lige bemærkes at det nok ikke er ligetil at gøre det ved checkboksens navn, da denne er en fortløbende værdi, der knytter sig til link\'ets ID-nummer i databasen - i stil med
checkboks1
checkboks2
checkboks3
osv...

Håber der er en ekspert der kan hjælpe!


<script language=\"JavaScript\">
<!--
function CheckAll()
{
    for (var i=0;i<document.linkform.elements.length;i++)
    {
        var e = document.linkform.elements[i];
        if ((e.name != \'allbox\') && (e.type==\'checkbox\'))
        e.checked = document.linkform.allbox.checked;
    }
}
//-->
</script>
Avatar billede erikjacobsen Ekspert
18. maj 2001 - 21:00 #1
<script language=\"JavaScript\">
<!--
  function CheckAll()
  {
    for (var i=0;i<document.linkform.elements.length;i++)
    {
        var e = document.linkform.elements[i];
        if ((e.name.indexOf(\'checkboks\')==0) && (e.type==\'checkbox\'))
            e.checked = document.linkform.allbox.checked;
    }
  }
//-->
</script>
Avatar billede jakoba Nybegynder
18. maj 2001 - 21:05 #2
Kunne du evt lægge en value= parameter i de checkboxe der skal afkrydses som fx:

<input type=\'checkbox\' name=\'uselesname\' value=\'tamed\'>

og så ændre din betingelsen i din if-sætning til følgende linie:
        if ((e.type==\'checkbox\') && (e.name != \'allbox\') && (e.value=\'tamed\'))

mvh JakobA
Avatar billede jakoba Nybegynder
18. maj 2001 - 21:07 #3
Det kan godt være du bliver nødt til at lægge en value=\"gylle\" i de andre checkbokse
Avatar billede bms Nybegynder
18. maj 2001 - 21:10 #4
Hov der var jeg sgu lige for hurtig!

erikjacobsen >> Når jeg tjekker siden kan den fint afkrydse alle checkboksene - men jeg tænkte på - kunne man ikke ordne det sådan at hvis alle checkboksene VAR afkrydset så var \"Afkryds alle links\"-checkboksen det også (pr default)?
Avatar billede erikjacobsen Ekspert
18. maj 2001 - 21:16 #5
Johhhh, det kan man da..... hvis det skal være. Prøv lige at tænke over denne idé:

i hver checkbox af den rigtige slags tilføjer du en onchange, der kalder en funktion
ganske meget lige med CheckAll ovenfor. Den løber alle checkboxe af den rigtige
slags igennem (og det kan du nu), og finder/tæller dem der ikke er checked. Er
der ikke nogen af dem, så kan du \"checke\" den der \"afkryds alle\", og ellers skal
du \"unchecke\" den. Ved du hvad: jeg tror du godt kan selv...:)
Avatar billede bms Nybegynder
18. maj 2001 - 21:19 #6
Johh... Nu skal du se - har ordnet det sådan i stil med det du siger: Altså hvis jeg afkrydser alle checkboksene så bliver \"Afkryds alle links\"-checkboksen det nu også. Men den er det ikke som default når jeg kalder siden selvom alle checkboksene er afkrydset.

Det er småting - but still! Du ved hvordan det er!?
Avatar billede bms Nybegynder
18. maj 2001 - 21:20 #7
Nej - ved du hvad - det gør sgu ikke noget. Er fint tilfreds med det jeg har fået strikket sammen.

Tak for hjælpen!
Avatar billede erikjacobsen Ekspert
18. maj 2001 - 21:21 #8
så skal du kalde den samme funktion på onload i <body>

Erik \"how hard can it be\" Jacobsen
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