Javascript ist Toll!

FAQ > Javascript

24. August 2005 - 12:24

Checkboxen auf einmal markieren

Es sollen mit Hilfe einer Checkbox, alle Checkboxen einer bestimmten Gruppe auf einmal markiert werden.

Das Formular

Das Formular dazu sieht so aus:

box 1
box 2
box 3
box 4
box 5

Alle

Ich verwende für die Checkboxen Namen, die in PHP üblich sind um Elemente als Array abzufragen.

Der HTML Quellcode:

html
<form action="#">
<p><input type="checkbox" name="loeschen[]"> box 1<br>
<input type="checkbox" name="loeschen[]"> box 2<br>
<input type="checkbox" name="loeschen[]"> box 3<br>
<input type="checkbox" name="loeschen[]"> box 4<br>
<input type="checkbox" name="loeschen[]"> box 5<br>
<p>
<input onclick="check_all('loeschen[]', this)" type="checkbox"> Alle
</form>

JS Quellcode

Der Quellcode ist relativ simpel:

javascript
function check_all(name, el){
     if(!el || !el.form) return alert('falscher Parameter');
     var box = el.form.elements[name];
     if(!box) return alert(name + ' existiert nicht!');
     for(var i = 0; i < box.length; i++)  box[i].checked = el.checked;
}

Ähnliche Artikel

Comments (5)
3297 mal gelesen.

5 Comments

Einen Kommentar hinterlassen »

Kommentare

1. von mr. a
Dienstag 12.Mai 2009: 15:33

besser gehts garnicht! vielen dank!

2. von JochenSan
Montag 12.April 2010: 19:00

Deine Seite war mir eine große Hilfe! Dafür vielen Dank!

3. von zap
Donnerstag 22.April 2010: 15:04

jquery ftw:
$('input[name=loeschen[]]').attr( 'checked','checked' );

einfacher (schneller) geht der zugriff über class oder id, aber der attribut-selektor funzt genauso.

ähnliche thematik für das auslesen von radiobuttons:

$('input[name=test]:checked').val();
mit "herkömmlichem" JS müsste man erst die elemente raussuchen und dann mit einer schleife bis zum gecheckten drüber laufen...

4. von Struppi
Donnerstag 22.April 2010: 16:20

Schon klar das der Code mit jquery kürzer aussieht.
Aber jquery wird im Endeffekt nichts anderes machen als: "erst elemente raussuchen und dann mit einer schleife bis zum gecheckten drüber laufen..."

5. von letti
Freitag 13.Mai 2011: 22:47

Hallo Struppi,

Funktioniert super!
Aber...was muss ich ergänzen, damit die Markierung der Checkbox "Alle" automatisch wieder entfernt wird, wenn ich Selektierung von einer der 5 Checkboxen "box 1-5" wieder rausnehme? Vielen Dank schonmal!

Grüße
Kien

Einen Kommentar hinterlassen

Name (erforderlich)
Mail (wird nicht angezeigt) (erforderlich)
Website

Folgende HTML Tags sind erlaubt: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



Powered by WordPress Stop Spam Harvesters, Join Project Honey Pot kostenloser Counter Browser-Statistiken
rats-wonderful
rats-wonderful
rats-wonderful
rats-wonderful