Avatar billede japlex Nybegynder
11. oktober 2002 - 12:44 Der er 12 kommentarer og
4 løsninger

Fange egenskaben Checked/Unchecked på en checkboks??

Hvordan fanges egenskaben checked/unchecked på en checkboks i en tabel. Tabellen er genereret i ASP.

Gennemløbet skal foretages på klientsiden!!
Avatar billede hbhansen Nybegynder
11. oktober 2002 - 12:48 #1
if(document.formnavn.chechfeltnavn.checked = true)
{
//afkrydset
}
else
{
//ikke afkrydset
}
Avatar billede loss Nybegynder
11. oktober 2002 - 12:48 #2
if (document.Submit_Form.Terms.checked == false )
{
  alert("bla bla");
    document.Submit_Form.Terms.focus();
    return false;
}
Avatar billede japlex Nybegynder
11. oktober 2002 - 13:07 #3
>> hbhansen
Jeg har ikke udtrykt mig præcist nok!!

Jeg har brug for at tjekke x antal checkboxe der ligger i x antal tabelfelter!

Så kan du ikke give mig et generelt kodeeksempel i stil med det du lige skrev, der kører en løkke igennen x gange!!

Jeg er absolut novice mht. javascript.
Avatar billede hbhansen Nybegynder
11. oktober 2002 - 13:10 #4
Jow hvis checkboksene har samme navn, har de det ?
Ellers prøv lige at poste din formular !
Avatar billede japlex Nybegynder
11. oktober 2002 - 13:13 #5
<form name="form">
<table width="75%" border="1">
  <tr>
    <td><input type="checkbox" name="checkbox1" value="checkbox"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="checkbox2" value="checkbox"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="checkbox3" value="checkbox"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

</form>
Avatar billede hbhansen Nybegynder
11. oktober 2002 - 13:23 #6
Hvis du kun har 3 checkbokses !
Vil jeg forslå:
if(document.form.checkbox1.checked = true && document.form.checkbox2.checked = true && document.form.checkbox3.checked = true) // hvis alle 3 checkbokses er checked
{
//afkrydset
}
Avatar billede japlex Nybegynder
11. oktober 2002 - 13:23 #7
jeg har virkelig mange - det var egentlig kun for at gøre det simpelt!!!
Avatar billede hbhansen Nybegynder
11. oktober 2002 - 13:27 #8
Det ved jeg ikke rigtig men det er noget med en for sætning, prøv at kigge på :
http://developer.netscape.com/docs/manuals/javascript.html
Avatar billede atoft Nybegynder
11. oktober 2002 - 13:42 #9
Denne function vil checke de enkelte checkebox.

Funktionen forudsætter, at checkboxen er nummereret fortløbende fra nr 1.

function doit() {
    var name="checkbox";
    var i = 1;
    while (true) {
        var chk = eval("document.all." +name + i);
       
        if (chk) {
            alert(chk.checked);
        } else {
            break;       
        }
        i++;
    }
}


function doit() {
    var name="checkbox";
    var i = 1;
    while (true) {
        var chk = eval("document.all." +name + i);
       
        if (chk) {
            alert(chk.checked);
        } else {
            break;       
        }
        i++;
    }
}

Kan det bruges
Avatar billede atoft Nybegynder
11. oktober 2002 - 13:44 #10
Ups det fik den 2 gang for samme pris :-)
Avatar billede japlex Nybegynder
11. oktober 2002 - 14:09 #11
Hvad betyder

while (true) {
Avatar billede atoft Nybegynder
11. oktober 2002 - 14:51 #12
Da du sikkert ikke ved hvormange checkboxes du har sætter jeg en løkke op som kører evigt while(true). Det som stopper løkken er break.
Avatar billede Slettet bruger
11. oktober 2002 - 17:01 #13
Hvis det skal virke i andre browsere end IE, så er denne noget smartere:

function tjek(frm) {
c = 0;
for (i = 0; i < frm.elements.length; i++)
if (frm.elements[i].type == "checkbox" && frm.elements[i].checked)
c++;
alert("Der er sat hak i " + c + " checkbokse!");
}

Kaldes fra fx en knap:

<input type="button" value="Tæl" onClick="tjek(this);">
Avatar billede atoft Nybegynder
14. oktober 2002 - 09:12 #14
phoenixv: skal du skal vel ikke sende this med som parameter til tjek.
Avatar billede Slettet bruger
21. oktober 2002 - 08:39 #15
Hvorfor ikke?

Det er en reference til formen, og måske en af de mest brugte ting i JavaScript. Så jeg kan ikke se noget argument for at udelade det.
Hvis du tænker på løsningen med at bruge "document.formNavn.submit()" inde i validerings-funktionen, så kan jeg fortælle dig, at det er en dårligere løsning.
Avatar billede japlex Nybegynder
15. januar 2003 - 09:43 #16
Jeg har lukket spørgsmålet og fordelt pointene ligeligt da jeg ikke har tid til at gå dybere i besvarelserne - håber det er ok!
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