Marcus: Überprüfen ob alle Checkboxen gechecked sind

Hallo !

Ich möchte gerne überprüfen ob alle Checkboxen wirklich ein Häkchen besitzen.

Mit dieser Funktion werden alle "leeren" Checkboxen überprüft und es gibt es Fehlermeldung

function auswahl() {
for (var i = 0; i <= '<%=seiten%>'; i++)
  {
  if (parent.frames[2].document.forms[0].elements[i].checked  == true)
    {
    return true;
    }
  }
  alert("Bitte waehlen sie etwas aus!"); return false;

}

Nun habe ich mir gedacht jetzt drehst du die IF Abfrage um, z.b. in
if (parent.frames[2].document.forms[0].elements[i].checked  == false)
oder in if (!parent.frames[2].document.forms[0].elements[i].checked  == true)

Aber wenn ich die Funktion nun ausführe, passiert nix. Mein Ziel ist es eine Meldung zu bekommen, dass alle Checkboxen ein Häkchen besitzen. Was mache ich falsch ?

Über jeden Tip würde ich mich freuen...

Danke !

Gruss

Marcus

  1. function auswahl() {

    check = true;

    for (var i = 0; i <= '<%=seiten%>'; i++)
      {

    if (parent.frames[2].document.forms[0].elements[i].checked  == false)

    {

    check = false;

    }
      }
    }

    if ( check == false ) {
       alert("bitte alle felder ankreuzen !");
       return false;
    }
    else {
       return true;
    }

    So ungefähr müsste es funzen. (ungetestet)

    ace

    1. Hallo,

      ich frage nicht gesetzte Checkboxen so ab.
      if (!parent.frames[2].document.forms[0].elements[i].checked)

      Demenstprechend im Code dann:

      function auswahl() {
      check = true;
      for (var i = 0; i <= '<%=seiten%>'; i++)
        {
           if (!parent.frames[2].document.forms[0].elements[i].checked)
          {
             check = false;
          }
        }
      }

      if ( check == false ) {
         alert("bitte alle felder ankreuzen !");
         return false;
      }
      else {
         return true;
      }

      So funktioniert es bei mir. (allerdings habe ich kein Frameset gebaut um zu teste.

      Gruß

      Harald

      1. Hallo,

        danke für die schnellen Postings. Ich habe beide Varianten ausprobiert und mein IE meckert immer mit folgender Meldung:

        Fehler: 'return'-Anweisung außerhalb einer Funktion

        Ich habe schon versucht eine Klammer zu versetzen, dann funzt es auch...aber egal ob alle angehackt sind oder nicht

        Noch vielleicht ne Idee ?

        Danke !

        Gruss

        Marcus

        1. function auswahl() {

          check = true;
             for (var i = 0; i <= parent.frames[2].document.forms[0].length; i++) {
                if (!parent.frames[2].document.forms[0].elements[i].checked) {
                   check = false;
                }
             }

          if ( check == false ) {
                alert("bitte alle felder ankreuzen !");
                return false;
             }
             else {
                return true;
             }
          }

          wie siehts jetzt aus ?

          ace

          1. function auswahl() {

            check = true;
               for (var i = 0; i <= parent.frames[2].document.forms[0].length; i++) {
                  if (!parent.frames[2].document.forms[0].elements[i].checked) {
                     check = false;
                  }
               }

            if ( check == false ) {
                  alert("bitte alle felder ankreuzen !");
                  return false;
               }
               else {
                  return true;
               }
            }

            wie siehts jetzt aus ?

            ace

            Also ich frag so ab und weder NS noch IE macht Probleme
            function check(){

            if ((document.formularname.checkboxname.checked)==false){
            alert("bitte alle felder ankreuzen !");
            document.formularname.checkboxname.focus();
            return false;}

            else { return true;}}

            Vielleicht hilfts...

            Gruß

  2. hi,

    folgendes testet alle _checkboxen_ der ersten form. Andere Elemente werden nicht geprueft.

    hth + Gruss  Joachim

    <html>
    <head>

    <script language="javascript1.2">
    function check () {
     // elementreferenz
     var df =  document.forms[0].elements;
     for (i= 0; i < df.length; i++) {
      if (df[i].type == "checkbox") {
       if (!df[i].checked) {
        alert ("bitte " + df[i].name + " anklicken!");
        return false
       }
      }
     }
    }
    </script>

    </head>

    <body>

    <form name="feld" onsubmit="return check()">
     <input type="checkbox" name="ch1" value="1">
     <input type="checkbox" name="ch2" value="2">
     <input type="checkbox" name="ch3" value="3"> <br><br>
     <input type="submit" value="wech">
    </form>

    </body>
    </html>