ChiChi: Noch ne if-Bedingung-Frage

ich will prüfen, ob eine der checkboxen 0, 1, 2 oder 3 gecheckt sind:

hier prüfe ich die erste:
if(document.bestellung.ordMode[0].checked == false)

alles weitere mit dem oder-operator, vielleicht?
naja ich will eben falls keine angeklickt wurde alert ausgeben.
chichi

  1. ich will prüfen, ob eine der checkboxen 0, 1, 2 oder 3 gecheckt sind:

    hier prüfe ich die erste:
    if(document.bestellung.ordMode[0].checked == false)

    Um das flexibel zu halten mache eine Schleife die über alle checkboxen mit den gleichen Namen läuft

    var check =  document.bestellung.ordMode;
    var ok = true;

    for(var i = 0; i < check.length; i++)
    if(!check[i].checked) ok = false;

    if(ok) alert('alle angeklickt');

    Struppi.

    1. bekomme das ding nicht zum laufen:

      so habe ich es versucht:

      var check =  document.bestellung.ordMode;
      var ok = "nichtgeklickt";

      for(var i = 0; i < check.length; i++)
      if(!check[i].checked) ok = "einswurdegeklickt";

      if(ok == "einswurdegeklickt") {
      strFields = "Bitte eine Zahlungsart wählen\n";}

      leider gibt er mir immer "Bitte eine Zahlungsart wählen" aus. Ich will, dass er das nur ausgiebt wenn keiner angeklickt wurde.

      chichi

      1. habe es umgeschrieben jetzt gehts...

        if(theform.ordMode[0].checked != true && theform.ordMode[1].checked != true && theform.ordMode[2].checked != true  && theform.ordMode[3].checked != true) {
                bMissingFields = true;
                strFields += "     Bitte eine Zahlungsart wählen!\n";
             }

        chichi

      2. var check =  document.bestellung.ordMode;
        var ok = "nichtgeklickt";

        warum?

        var ok = true;

        ist effizienter

        for(var i = 0; i < check.length; i++)
        if(!check[i].checked) ok = "einswurdegeklickt";

        if(!check[i].checked) ok = false;

        if(ok == "einswurdegeklickt") {
        strFields = "Bitte eine Zahlungsart wählen\n";}

        leider gibt er mir immer "Bitte eine Zahlungsart wählen" aus. Ich will, dass er das nur ausgiebt wenn keiner angeklickt wurde.

        Ich hatte es falsch verstanden.
        var check =  document.bestellung.ordMode;
        var ok = false;
        for(var i = 0; i < check.length; i++)
        if( check[i].checked ) ok = true;

        Struppi.