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