Datenschutzerklärung

Dynamischer Checkboxaufbau

Validome - Forum

Startseite Validome
RSS 2.0  
Sie sind nicht angemeldet. Atom 1.0  
Forum Home / Javascript-Forum /

Dynamischer Checkboxaufbau

  Beitrag schreiben
Autor
Beitrag Seiten: 1
der_neue
Mitglied

Registriert: 24.11.2009
Beiträge: 3
Hallo!

Ich habe folgendes Problem:

Ich möchte eine bestimmte Anzahl von Checkboxen dynamisch über eine FOR - Schleife erstellen. --> Funktioniert
Weiters habe ich den Namen jeder Checkbox über ein Array beschrieben. --> funktioniert

Code:

myArray[0]  = "a";
myArray[1]  = "b";
myArray[2]  = "c";

for (i= 0; i < myArray.length; i++)
{
    document.write("<input type=" + chkbox + " name=" +  myArray[i] + " checked>" + myArray[i] + "<br>");
}

Leider handelt es sich bei mir um ca. 60 Checkboxen. Daher wollte ich mir eine option bauen, die sämtliche Checkboxen setzt oder rücksetzt.
Hierfür kamen 2 weitere Checkboxen zur anwendung.


document.writeln("<form action=" + URL + " id=" + myform + ">");
document.writeln('<input name = "chkall" type = "checkbox" onclick = "cboxListOn()" value="Check all">Check all<br>');
document.writeln('<input name = "unchk" type = "checkbox" onclick = "cboxListOff()" value="Uncheck all">Uncheck all<br>');
document.writeln('<input type="submit" value="Submit">');
document.writeln("</form>");

bei onclick soltlen nun foglende funktionen ausgeführt werden:


function cboxListOn()
    {
        for (a= 0; a < myArray.length; a++)
        {
            alert(a);
            var colors = document.forms[myform].myArray[a];
            if (document.forms[myform].chkall.checked == true)
            {
                document.forms[myform].unchk.checked = false;
                for ( i = 0; i < colors.length; i++ )
                {
                    colors[i].checked = true;
                }
            }
        }
    }

    function cboxListOff()
    {
        for (a = 0; a < myArray.length; a++)
        {
            alert(myArray[a]);
            var colors = document.forms[myform].myArray[a];
            if (document.forms[myform].unchk.checked == true)
            {
                document.forms[myform].chkall.checked = false;
                for ( i = 0; i < colors.length; i++ )
                {
                    colors[i].checked = false;
                }
            }
        }
    }

Leider bekomme ich (alert(myArray[a]) nur den ersten Wert des arrays zurück. In der 2. Zeile dürfte sich ein Fehler eingeschlichen haben. Trotz suche finde ich leider nicht den richtigen Lösungsansatz.

Ich weiß, dass sich die Form eigentlich auf die Checkboxen beziehen muss, aber ich weiß nicht wie dies zu realisieren ist.

Kann mir bitte jemnad helfen?


mfg


24.11.2009 15:11:19
  Beitrag schreiben
der_neue
Mitglied

Registriert: 24.11.2009
Beiträge: 3
Danke hat sich erledigt

26.11.2009 12:49:31
  Beitrag schreiben
Seiten: 1   Beitrag schreiben
Wechsel zu

Valid HTML 4.01