JS: alle Checkboxen aktivieren

Hallo,

ich habe da auch so meine Probleme mit "alle Checkboxen" aktivieren:
Ich möchte auf meine Homepage Bilder zum Download zur Verfügung stellen. Es besteht die Möglichkeit die Bilder in einer wählbaren Qualität herunterzuladen, z.B. Hohe / niedrige Qualität. Mit Hilfe der For Schleife wird bei Erzeugung der Galerie gleichzeitig 2 Checkboxen je Bild erzeugt (Hohe / Niedrige Qualität), die Werte werden alle in das selbe Array geschrieben. nun hätte ich gern 2 Checkboxen, die "alle" anderen Checkboxen auswählen - zum einen "alle auswählen in niedriger Qualität" und "alle auswählen in hoher Qualität"
Das Javascript für "Alle Checkboxen auswählen" habe ich schon gefunden - funktioniert auch, aber nicht, wenn ich zwei solcher "Alle Auswählen Checkboxen" einbinde, da diese sich natürlich auch gegenseitig auch auswählen. Wie kann ich dieses Problem lösen?

Vielen Dank schon mal im Voraus
 
Hi,

du müsstest irgendein Entscheidungskriterium haben, anhand dessen du unterscheiden kannst, welcher
Gruppe (hoch/tief) die Checkbox angehört. Im Beispiel habe ich einen Klassenname zur Unterscheidung
verwendet.
Code:
<html>
<head>
<title>www.tutorials.de</title>
<meta name="author" content="Quaese">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
  <!--
function checkBoxes(objBox, strClass){
  var arrBoxes = document.getElementsByTagName("input");
  var strPattern = eval("/"+strClass+"/");

  // Array durchlaufen
  for(var i=0; i<arrBoxes.length; i++){
    // Falls es sich um eine Checkbox handelt, die den passenden Klassennamen besitzt
    if((arrBoxes[i].type.toLowerCase() == "checkbox") && (arrBoxes[i].className.search(strPattern) != -1 )){
      arrBoxes[i].checked = objBox.checked;
    }
  }
}
 //-->
</script>
</head>
<body>
<form>
  <div>
    <input type="checkbox" onclick="checkBoxes(this, 'quali-hoch');" value="">alle hoch<br>
    <input type="checkbox" onclick="checkBoxes(this, 'quali-niedrig');" value="">alle niedrig
  </div>
  <div>
    <input type="checkbox" name="n1" class="quali-hoch" value="1">hoch<br>
    <input type="checkbox" name="n1" class="quali-niedrig" value="2">niedrig<br>

    <input type="checkbox" name="n2" class="quali-hoch" value="3">hoch<br>
    <input type="checkbox" name="n2" class="quali-niedrig" value="4">niedrig<br>

    <input type="checkbox" name="n3" class="quali-hoch" value="5">hoch<br>
    <input type="checkbox" name="n3" class="quali-niedrig" value="6">niedrig
  </div>
</form>
</body>
</html>
Ciao
Quaese
 
Hallo Quaese,

vielen vielen Dank für deine Hilfe - funktioniert super und wieder was dazu gelernt.

Schönes Wochenende noch

viele grüße
 
Zurück