mehrere checkboxen zusammen abfragen

solala123

Erfahrenes Mitglied
Hallo,
hab wieder mal ein Problem
in meinem Formular sind 7 Checkboxen mit der Bezeichnung montag, dienstag,...... sonntag
Nun möchte ich einen Fehler ausgeben, wenn alle angekreuzt sind.
habe folgendes schon versucht: nur mit einem Kästchen
Code:
  $query2="INSERT INTO ResBar
      SET
        mo='$mo',
        di='$di',
	    mi='$mi',
	    do='$do',
	    fr='$fr',
	    sa='$sa',
	    so='$so', 

        <label for="montag">Mo.</label>
        <input name="mo" type="checkbox"  id="montag" value="montag">
        
        <label for="dienstag">Di.</label>
        <input name="di" type="checkbox"  id="dienstag" value="dienstag">
        
        <label for="mittwoch">Mi.</label>
        <input name="mi" type="checkbox"  id="mittwoch" value="mittwoch">
        
        <label for="donnerstag">Do.</label>
        <input name="do" type="checkbox"  id="donnerstag" value="donnerstag">
        
        <label for="freitag">Fr.</label>
        <input name="fr" type="checkbox"  id="freitag" value="freitag">
        
        <label for="samstag">Sa.</label>
        <input name="sa" type="checkbox"  id="samtag" value="samstag">
        
        <label for="sonntag">So.</label>
        <input name="so" type="checkbox"  id="sonntag" value="sonntag">

<script type="text/javascript">
function chkFormular ()

    if (document.Formular.di.value == "montag") {
    alert("Eingabe nicht möglich");
    document.Formular.di.focus();
    return false;
  }
</script>



Das sollte so funktionieren:
wenn der Haken im Montag gesetzt ist, sollte ein Fenster aufgehen "Eingabe nicht möglich"

wenn ich mir den Inhalt der Variablen anzeigen lasse, steht auch "z.B. montag" drinnen

mit Textfeldern funktioniert es

Kann mir jemand helfen?
Danke und Gruß
Rainer
 
Hallo,

in der Funktion prüfst du aber nicht die Checkbox mo sondern di. Das dürfte schonmal der erste Fehler sein. Was mir auch nicht so ganz klar ist, welche Variable den Wert Montag enthalten soll!?

Aber das hier sollte das gewünschte Ergebnis liefern:

HTML:
<label for="montag">Mo.</label>
<input name="mo" type="checkbox"  id="montag" value="montag" onclick="chkFormular('mo')" />

<label for="dienstag">Di.</label>
<input name="di" type="checkbox"  id="dienstag" value="dienstag" onclick="chkFormular('di')" />

<label for="mittwoch">Mi.</label>
<input name="mi" type="checkbox"  id="mittwoch" value="mittwoch" onclick="chkFormular('mi')" />

<label for="donnerstag">Do.</label>
<input name="do" type="checkbox"  id="donnerstag" value="donnerstag" onclick="chkFormular('do')" />

<label for="freitag">Fr.</label>
<input name="fr" type="checkbox"  id="freitag" value="freitag" onclick="chkFormular('fr')" />

<label for="samstag">Sa.</label>
<input name="sa" type="checkbox"  id="samstag" value="samstag" onclick="chkFormular('sa')" />

<label for="sonntag">So.</label>
<input name="so" type="checkbox"  id="sonntag" value="sonntag" onclick="chkFormular('so')" />

Javascript:
<script type="text/javascript">
var check = 0;

function chkFormular (box) {

if (document.getElementById(box).checked == true) {
	check = check + 1;
} else if (document.getElementById(box).checked == false) {
	check = check - 1;
}

if (check == 7) {
	alert ("Es dürfen nicht alle Checkboxen markiert werden!");
	check = check - 1;
	document.getElementById(box).checked = false;
}

}
</script>
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück