checkboxen checken

Headymaster

Erfahrenes Mitglied
Hallo,

nachdem ich ein bissle gegoogelt habe, habe ich ne kleine JS-Funktion geschrieben, die mir beim Aufruf alle checkboxen auf checked oder im anderen fall auf unchecked setzen soll.

Leider passiert bei Click gar nichts, ich bekomme nicht mal nen Fehler

Hier mal die Datei:
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html lang="de">
 <head>
  <title>**********</title>
  <link rel="stylesheet" type="text/css" href="styles/**********" />
  <script type="text/javascript">
   <!-- 
    var checked = false;
    
    function CheckAll() {
    var boxes = document.getElementsByName('check');
        // Wenn die Checkbox nicht markiert war, alle checkboxen markieren
        if (checked === false) {
            for (i=0;i<boxes.length;i++) {
                boxes[i].checked = true;
                checked = true;
            }
        } else {
            // Alle Checkboxen auf unchecked
            for (i=0;i<boxes.length;i++) {
                boxes[i].checked = false;
                checked = false;
            }
        }
        alert(boxes);
    }
   // -->
  </script>
 </head>
 <body>
  <div id="Wrapper">
   <div id="Top">
   </div>
   <div id="Content">
    <table summary="Ergebnisse der Suchabfrage des WZ Moduls">
     <colgroup>
      <col width="10%" />
      <col width="10%" />
      <col width="5%" />
      <col />
     </colgroup>
     <thead>
      <tr>
       <th>abc</th>
       <th>def</th>
       <th><input type="checkbox" name="checkall" value="checkall" onClick="CheckAll();" /></th>
       <th>Beschreibung</th>
      </tr>
     </thead>
     <tbody>
      <tr>
       <td>52.11.0</td>
       <td>23.15.8</td>
       <td><input type="checkbox" name="check[1]" value="checkall" /></td>
       <td>awdawdawdawdawdawd</td>
      </tr>
      <tr>
       <td>52.11.0</td>
       <td>23.15.8</td>
       <td><input type="checkbox" name="check[2]" value="checkall" /></td>
       <td>awdawdawdawdawdawdawd</td>
      </tr>
      <tr>
       <td>52.11.0</td>
       <td>23.15.8</td>
       <td><input type="checkbox" name="check[3]" value="checkall" /></td>
       <td>wadawdawdawdawdawdawdawd</td>
      </tr>
     </tbody>
     <tfoot></tfoot>
    </table>
   </div>
  </div>
 </body>
</html>

Würde mich super über Hilfe freuen =)

MFG Nilson
 
Moin,

Du hast dort keine Checkboxen namens check....die Namen sind check[1] usw.

Entferne die Zahlen für die Indizes aus den Checkboxnamen und greife per
Code:
var boxes = document.getElementsByName('check[]');
darauf zu, dann klappt es wie gewünscht :)
 
Achso ich dachte man kann per Angabe von [] direkt im HTML Document schon andeuten dass es ein array wird und javascript baut sich das selbst zusammen.

Aber ich werde es mal andersherum probieren.
Vielen Dank :)

MFG Nilson
 
Ein Array wird es dadurch erst beim Versenden, für JS haben diese Boxen alle unterschiedliche Namen und gehören nicht zusammen.
 
Zurück