Avatar billede zurekk Nybegynder
13. juni 2007 - 16:22 Der er 11 kommentarer og
1 løsning

Check boxes!

Hej Eksperter,

Jeg skal bruge et script som checker alle checkboxe i en form, ved klik på et link.

Jeg har fundet en masse som gør det ved at give navnet et id, og så +'e det.

Men mit navn skal indeholde et id fra databasen.
Dvs. det bliver lidt random, altså 232, 235234, 234234324234, 324, 23434342, eller noget i den stil :)

Hvad gør jeg?

På forhånd tak!
Avatar billede fennec Nybegynder
13. juni 2007 - 16:28 #1
Har du kun det sæt checkboxe på siden?? Dvs at vi bare skal finde alle checkboxe uanset navn, også afkrydse dem...
Avatar billede fennec Nybegynder
13. juni 2007 - 16:32 #2
Denne kode finder alle checkboxe og afkrydser dem:

function checkAll()
{
    obj = document.getElementsByTagName("input")
    for(f=0;f<obj.length;f++)
        if(obj[f].type=="checkbox")
            obj[f].checked = true;
}
Avatar billede zurekk Nybegynder
13. juni 2007 - 16:50 #3
Well, nej, jeg har 2 forskellige forme, med checkboxes, så det vil ikke virke, desværre.
Avatar billede soes Nybegynder
13. juni 2007 - 18:17 #4
måske med en lille ændring.

function checkAll()
{
    var targetForm = "myForm2";
    obj = document.getElementsByTagName("input")
    for(f=0;f<obj.length;f++)
        if(obj[f].type=="checkbox" && obj[f].form.name == targetForm)
            obj[f].checked = true;
}

ref. http://w3schools.com/htmldom/dom_obj_checkbox.asp
Avatar billede zurekk Nybegynder
13. juni 2007 - 18:22 #5
Hjalp ikke =/
Den vælger stadig alle på siden.
Avatar billede zurekk Nybegynder
13. juni 2007 - 18:23 #6
Nej, min fejl, smid et svar.

Lagde checkboxene forkert -__
Avatar billede soes Nybegynder
13. juni 2007 - 18:28 #7
Du får lige et svar.
Avatar billede zurekk Nybegynder
13. juni 2007 - 19:42 #8
Tak :D
Avatar billede mclemens Nybegynder
13. juni 2007 - 21:08 #9
Fennec's kan udover måden Soes begrænsede
den på også begrænses ved at skrive f.eks.:
(hvor "formnavn" erstattes med formens name)

function checkAll(){
    obj = document.formnavn.getElementsByTagName("input")
    for(f=0;f<obj.length;f++)
        if(obj[f].type=="checkbox")
            obj[f].checked = true;
}
Avatar billede olebole Juniormester
14. juni 2007 - 15:20 #10
<ole>

- og hvis man ikke bryder sig om 'sammenkogte retter' med oldwebsk HTML-DOM og standard-DOM, er dette absolut også en mulighed (fordrer et ID på formen):

function checkAll(){
    obj = document.getElementById("formnavn").getElementsByTagName("input")
    for(f=0;f<obj.length;f++)
        if(obj[f].type=="checkbox")
            obj[f].checked = true;
}

/mvh
</bole>
Avatar billede mclemens Nybegynder
14. juni 2007 - 16:45 #11
Og måske burde man bruge setAttribute og getAttribute.

function checkAll(){
    obj = document.getElementById("formnavn").getElementsByTagName("input");
    for(f=0;f<obj.length;f++)
        if(obj[f].getAttribute("type")=="checkbox")
            obj[f].setAttribute("checked","checked");
}
Avatar billede olebole Juniormester
15. juni 2007 - 12:22 #12
Nej, det bør ikke virke, da getAttribute ikke må reflektere dynamiske ændringer (checked-attributten). DOM og form-elementer hænger desværre ikke særlig godt sammen  :o|

XHTML2.0 og XForms ... Hvor er I nu, hvor vi har brug for Jer ...?!?!!!
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