Ik kom er niet uit en heb me suf gezocht op o.a. Google (wellicht weet ik niet de juiste termen om op te zoeken, dus vergeef me)
De vollgende code:
Boven aan staan 2 checkboxen.
Als je de linker checked, moet het linker rijtje geselecteerd worden.
Als je de rechter checked, moet het rechter rijtje geselecteerd worden.
Lijkt me duidelijk.
Ik wil hiervoor 1 functie gebruiken en stuur dus bij het checken van 1 van de bovenste checkboxen de naam mee van de naam van de array van de checkboxen.
De namen van de checkboxen moeten met [] worden genoteerd, omdat ik met PHP deze arrays wil uitlezen.
Ik krijg het aanvinken van het linker of rechterrijtje niet voor elkaar.
En dat gaat fout bij de reguliere expressie.
Hoe krijg ik nu de variabele in de reguliere expressie?!
Het gaat dus om regel 13 en 14. Op de een of andere manier moet er de waarde van tBoxName in krijgen.
De vollgende code:
code:
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>test</title>
</head>
<body>
<script type="text/javascript">
function checkAll(tButton, tBoxName) {
var allInputs = document.forms[0].getElementsByTagName("input");
var allUsedefaults = new Array();
regExp = new RegExp(/[tBoxName]\\[\]/);
regExp2 = new RegExp(/[tBoxName]\\[[^\]]+\]/);
for (var i = 0; i < allInputs.length; i++) {
if (allInputs[i].type != 'checkbox') continue;
if (allInputs[i].name.match(regExp) || allInputs[i].name.match(regExp2)) {
allUsedefaults.push(allInputs[i]);
}
}
for (var i = 0; i < allUsedefaults.length; i++) {
allUsedefaults[i].checked = tButton.checked;
}
}
</script>
<form action="<?=$_SERVER['PHP_SELF'];?>" method="post" name="frmTest" id="frmTest">
<table border="0" cellspacing="0" cellpadding="5">
<tr>
<td><strong>alles selecteren: </strong></td>
<td><input name="btnToggle" type="checkbox" id="btnToggle" value="true" onclick="checkAll(this, 'chkTestbox');" /></td>
<td><input name="btnToggle2" type="checkbox" id="btnToggle2" value="true" onclick="checkAll(this, 'chkTestbox2');" /></td>
</tr>
<tr>
<td>optie 1 </td>
<td><input name="chkTestbox[0]" type="checkbox" id="chkTestbox1" value="1" /></td>
<td><input name="chkTestbox2[0]" type="checkbox" id="chkTestbox1" value="1" /></td>
</tr>
<tr>
<td>optie 2 </td>
<td><input name="chkTestbox[1]" type="checkbox" id="chkTestbox2" value="2" /></td>
<td><input name="chkTestbox2[1]" type="checkbox" id="chkTestbox2" value="2" /></td>
</tr>
<tr>
<td>optie 3 </td>
<td><input name="chkTestbox[2]" type="checkbox" id="chkTestbox3" value="3" /></td>
<td><input name="chkTestbox2[2]" type="checkbox" id="chkTestbox3" value="3" /></td>
</tr>
<tr>
<td>optie 4 </td>
<td><input name="chkTestbox[3]" type="checkbox" id="chkTestbox4" value="4" /></td>
<td><input name="chkTestbox2[3]" type="checkbox" id="chkTestbox4" value="4" /></td>
</tr>
<tr>
<td>optie 5 </td>
<td><input name="chkTestbox[4]" type="checkbox" id="chkTestbox5" value="5" /></td>
<td><input name="chkTestbox2[4]" type="checkbox" id="chkTestbox5" value="5" /></td>
</tr>
<tr>
<td><strong>niet mee geselecteerd: </strong></td>
<td><input name="chkNiet" type="checkbox" id="chkTestbox5" value="100" /></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="Submit" value="Submit" /></td>
<td> </td>
</tr>
<tr valign="top">
<td>Resultaat formulier:</td>
<td> </td>
<td><pre><? print_r($_POST); ?></pre> </td>
</tr>
</table>
</form>
</body>
</html> |
Boven aan staan 2 checkboxen.
Als je de linker checked, moet het linker rijtje geselecteerd worden.
Als je de rechter checked, moet het rechter rijtje geselecteerd worden.
Lijkt me duidelijk.
Ik wil hiervoor 1 functie gebruiken en stuur dus bij het checken van 1 van de bovenste checkboxen de naam mee van de naam van de array van de checkboxen.
De namen van de checkboxen moeten met [] worden genoteerd, omdat ik met PHP deze arrays wil uitlezen.
Ik krijg het aanvinken van het linker of rechterrijtje niet voor elkaar.
En dat gaat fout bij de reguliere expressie.
Hoe krijg ik nu de variabele in de reguliere expressie?!
Het gaat dus om regel 13 en 14. Op de een of andere manier moet er de waarde van tBoxName in krijgen.