JCB: Formularüberprüfung von mehr als einer Checkbox

Beitrag lesen

Der Knackpunkt ist wohl, den Wert der Checkboxen abzufragen. Wenn ich es mit "value == 1" mache, wird die Schleife immer als richtig gewertet, egal ob eine Box angeklickt ist, oder nicht :-( Ich dachte halt, es wäre das einfachste, wenn mit jeder angeklickten Checkbox ein bestimmter Wert übergeben wird (also meinetwegen 3 x "1") sich daraus eine Bedingung ableiten lässt nach dem Motto: wenn der wert = 3 dann gehe weiter, sonst eben die alertbox. Mein Gedanke war eben, dass sich dies wohl mit einer Gruppe/Array realisieren lassen müsste?
Aber vielleicht liege ich da auch ganz falsch?

Also da is n kleiner Fehler drin :). Die Checkboxen dürfen nicht alle gleich heißen. Und der Wert wird bei einer Mehrfachauswahl auch nicht automatisch bzw. gar nicht addiert :).

Also ich würds so machen :):

<html>
<head>
<title>Auswahl</title>

<script language="JavaScript">

function CheckDieBoxen()
{
  var x=0;
  for(i = 0; i <= 5 ; i++)
  {
    if (document.auswahl.elements[i].checked == true)
    {
      x++;
    }
  }
  if (x>=3)
  {
    return true;
  }
  else
  {
    alert ("keine 3 angekreuzt");
    return false;
  }
}
</script>
</head>

<body>
<form name="auswahl" method="post" action="cgi-bin/formmail.pl" onSubmit="return CheckDieBoxen()">
  <p>
    <input type="checkbox" name="Box1">
    Box1
    <input type="checkbox" name="Box2">
    Box2
    <input type="checkbox" name="Box3">
    Box3 </p>
  <p>
    <input type="checkbox" name="Box4">
    Box4
    <input type="checkbox" name="Box5">
    Box5
    <input type="checkbox" name="Box6">
    Box6</p>
  <p>
    <input type=submit name="Abschicken" value="Abschicken">
  </p>
</form>
</body>
</html>

Gruß, Jan.
www.planet-1.de