Checkboxes prüfen

pglw

Erfahrenes Mitglied
Hallo zusammen,

in einem Formular habe ich 3 Checkboxes. Vor dem Versenden soll folgendes sichergestellt werden:

1)Mindestens eine der 3 ist angeklickt
2)Wenn die erste angeklickt ist --> dann darf die zweite nicht mehr angeklickt sein

Wie könnte ich so etwas realisieren?

MfG

PGLW
 
Zwar sicher nicht die eleganteste Lösung, aber es funktioniert.
HTML:
<script type='text/javascript'><!--
    function chbx(obj) {
    	var rvalue=false;
    	obj = obj.elements;
    	for (i in obj)
    		if (obj[i].type == "checkbox" && obj[i].checked)
    			rvalue = true;
    	return rvalue;
    }
    //--></script>
    
    <form onsubmit="return chbx(this)">
  	<input type="checkbox" onclick="box = this.form.elements[1]; box.disabled = this.checked ? 'true' : 'false'; if(this.checked) box.checked = false;" />
    	<input type="checkbox" />
    	<input type="checkbox" />
    	<input type="Submit" />
    </form>
 
Zuletzt bearbeitet:
Hi, ich bin im Moment leider nicht in der Lage Dein Script umzusetzen. Habe Probleme damit, was ich in dem Script einfach übernehmen kann und was ich anpassen muß, damit es bei mir läuft.

Kannst Du mir da noch kurz was dazu schreiben? Wäre nett. Danke
 
Wo hast du den Probleme? Die Funktion oben durchsucht alle Checkboxen in einem Formular und sorgt dafür, dass es nur abgeschickt werden kann, wenn mindestens eine angekreuzt wird und der onclick in der einen Checkbox sorgt dafür, dass das zweite Element im Formular gedisabled wird. Jetzt kann es natürlich sein, dass die zweite Checkbox nicht auch noch gleichzeitig das zweite Element ist. Da müsst du dann halt die richtige Nummer reinschreiben.
 
Meine Frage ist gerade, ob ich obj=obj.elements , bzw. this.form.elements oder etwa for(i in obj) so übernehmen kann oder ob ich da meine names einsetzen muß?

(Bin leider noch nicht so fit)
 
An der Funktion musst du gar nichts ändern. Du musst halt nur onsubmit="return chbx(this)" in dein Formular eintragen und es funktioniert.
 

Neue Beiträge

Zurück