javascript: check all

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bo az

Bo az

16/12/2005 14:42:00
Quote Anchor link
Ik heb een formulier met een willekeurige lengte bv:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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" />


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!
 
PHP hulp

PHP hulp

23/11/2024 11:07:02
 
Jan Koehoorn

Jan Koehoorn

16/12/2005 14:48:00
Quote Anchor link
Ik zou zoiets doen:

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;
}
}
}
 
Bo az

Bo az

16/12/2005 16:11:00
Quote Anchor link
Dat werkt nog niet direct, ik kwam op internet nog iets tegen wat vergelijkbaar is met dat van jou.

Maar misschien dat je me kan vertellen wat ik hier fout doe:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<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>
 
Jelmer -

Jelmer -

16/12/2005 16:14:00
Quote Anchor link
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 :)
 
Bo az

Bo az

16/12/2005 16:18:00
Quote Anchor link
Wist niet eens dat er een javascript console bestond, maar die zegt:
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
 
Jan Koehoorn

Jan Koehoorn

16/12/2005 16:19:00
Quote Anchor link
document.items is geen W3C DOM. Ik heb je code ff aangepast:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<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>


Link: werkend voorbeeld

edit: getest in FF, Opera en IE
Gewijzigd op 16/12/2005 16:21:00 door Jan Koehoorn
 
Bo az

Bo az

16/12/2005 16:24:00
Quote Anchor link
Nog getest ook :) dankje!
 
Jan Koehoorn

Jan Koehoorn

16/12/2005 16:28:00
Quote Anchor link
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.
 
Jelmer -

Jelmer -

16/12/2005 16:42:00
Quote Anchor link
Werkt prima in Safari :)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.