javascript: check all
Code (php)
1
2
3
2
3
<input type="checkbox" name="add[]" value="true" checked="checked" />
<input type="checkbox" name="add[]" value="true" checked="checked" />
<input type="checkbox" name="add[]" value="true" checked="checked" />
<input type="checkbox" name="add[]" value="true" checked="checked" />
<input type="checkbox" name="add[]" value="true" checked="checked" />
nu wil ik deze hele lijst in één keer unchecken met een knop oid.
Ik heb al wat met google gezocht en wat gevonden, maar ik krijg het niet echt werkend.
klik
was het meest duidelijke voorbeeld, maar zodra ik daar [] aan toevoegde werkte het niet meer.
Iemand enig idee? Al vast bedankt!
function uncheck_all () {
var x = document.GetElementsByTagName ('input');
var n = x.length;
for (i = 0; i < n; i++) {
if (x.type == 'checkbox') {
x.checked = false;
}
}
}
Maar misschien dat je me kan vertellen wat ik hier fout doe:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<html><head>
<script type="text/javascript">
<!--
function uncheck_all()
{
for(i=0; i<document.items.length; i++)
{
document.items[i].checked = false;
}
}
function check_all()
{
for(i=0; i<document.items.length; i++)
{
document.items[i].checked = true;
}
}
// -->
</script>
</head><body>
<form name="mylist">
<input type="checkbox" name="checkGroup[]" value="first">First<br>
<input type="checkbox" name="checkGroup[]" value="second">Second<br>
<input type="checkbox" name="checkGroup[]" value="third">Third<br>
<input type="checkbox" name="checkGroup[]" value="fourth">Fourth<br>
</form>
<a href="javascript:check_all()">flag all items</a> |
<a href="javascript:uncheck_all()">flag all items</a>
</body></html>
<script type="text/javascript">
<!--
function uncheck_all()
{
for(i=0; i<document.items.length; i++)
{
document.items[i].checked = false;
}
}
function check_all()
{
for(i=0; i<document.items.length; i++)
{
document.items[i].checked = true;
}
}
// -->
</script>
</head><body>
<form name="mylist">
<input type="checkbox" name="checkGroup[]" value="first">First<br>
<input type="checkbox" name="checkGroup[]" value="second">Second<br>
<input type="checkbox" name="checkGroup[]" value="third">Third<br>
<input type="checkbox" name="checkGroup[]" value="fourth">Fourth<br>
</form>
<a href="javascript:check_all()">flag all items</a> |
<a href="javascript:uncheck_all()">flag all items</a>
</body></html>
Dit wil alles in de hele pagina proberen te checken. En een plaatje kan niet gechecked worden, dus dan zou deze een error geven. Maar porbeer die van Jan eens, en kijk in de JS-console van Firefox wat de fout is. Als je dan nog niet weet, post de fout dan hier :)
document.GetElementsByTagName is not a function.
Edit: via google kom ik op:
document.getElementsByTagName
nu werkt het!
Gewijzigd op 16/12/2005 16:22:00 door Bo az
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<html><head>
<script type="text/javascript">
<!--
function set_checkboxes (state)
{
var x = document.getElementsByTagName ('input');
var n = x.length;
for (i = 0; i < n; i++) {
if (x[i].type == 'checkbox') {
x[i].checked = state;
}
}
}
// -->
</script>
</head><body>
<form name="mylist">
<input type="checkbox" name="checkGroup[]" value="first">First<br>
<input type="checkbox" name="checkGroup[]" value="second">Second<br>
<input type="checkbox" name="checkGroup[]" value="third">Third<br>
<input type="checkbox" name="checkGroup[]" value="fourth">Fourth<br>
</form>
<a href="javascript:set_checkboxes(true)">flag all items</a> |
<a href="javascript:set_checkboxes(false)">unflag all items</a>
</body></html>
<script type="text/javascript">
<!--
function set_checkboxes (state)
{
var x = document.getElementsByTagName ('input');
var n = x.length;
for (i = 0; i < n; i++) {
if (x[i].type == 'checkbox') {
x[i].checked = state;
}
}
}
// -->
</script>
</head><body>
<form name="mylist">
<input type="checkbox" name="checkGroup[]" value="first">First<br>
<input type="checkbox" name="checkGroup[]" value="second">Second<br>
<input type="checkbox" name="checkGroup[]" value="third">Third<br>
<input type="checkbox" name="checkGroup[]" value="fourth">Fourth<br>
</form>
<a href="javascript:set_checkboxes(true)">flag all items</a> |
<a href="javascript:set_checkboxes(false)">unflag all items</a>
</body></html>
Link: werkend voorbeeld
edit: getest in FF, Opera en IE
Gewijzigd op 16/12/2005 16:21:00 door Jan Koehoorn
Nog getest ook :) dankje!
Boaz:
Nog getest ook :) dankje!
Graag gedaan! Ja, testen moet wel hoor, vind ik. Toch minstens in IE, FF, Opera en liefst ook in Safari, maar die heb ik helaas niet zelf.
Werkt prima in Safari :)