Bonjour,
je suis entrain de faire un formulaire et je voudrais trouver un moyen d'effacer certains champs de celui-ci (PAS TOUS) quand une case (checkbox) est cochée (et cela sans que le formulaire soit envoyé et sans que les autres champs soit modifié)...
je cherche donc à faire un script qui s'effectuera lorsque la fameuse checkbox sera coché (donc un truc du style onclick="...")

Je précise que les champs que je veux effacer sont en fait d'autres checkbox... je veux donc quelle reprenne leur valeur initiale (décoché)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<html>
<head>
<title>Test d'un formulaire</title>
 
<style type="text/css">
  @import url(formulaire.css);
</style>
 
<script language="javascript">
var i=1;
var j=1;
function Cache(id){
        if (i==1){
                document.getElementById(id).style.visibility='visible'; document.getElementById(id).style.height='auto';
                i *= -1;
                return;
        }else if (i==-1){                
                document.getElementById(id).style.visibility='hidden'; document.getElementById(id).style.height='0px';
                i *= -1;
                return;
        }
}
function Cache2(id){
        if (j==1){
                document.getElementById(id).style.visibility='visible'; document.getElementById(id).style.height='auto';
                j *= -1;
                return;
        }else if (j==-1){                
                document.getElementById(id).style.visibility='hidden'; document.getElementById(id).style.height='0px';
                j *= -1;
                return;
        }
}
function Efface(id){
		if (i==-1){
			document.getElementById(id);
			return;
		}
}
</script>
</head>
 
<body>
<h1>Mon Formulaire</h1>
<form name="formulaire" method="get" action="index.html">
<div class="visible">
Voir la suite du formulaire:<INPUT type="checkbox" value="suite" name="1" onclick="Cache('invisible1');" onclick="Efface('invisible1');">
</div>
 
<div id="invisible1">
suite1:<INPUT id="aefface" type="checkbox" value="suite1" name="2"><br />
texte: <INPUT id="aefface" type="textarea" value="votre_texte" name="3"><br />
suite2:<INPUT id="aefface" type="checkbox" value="suite2" name="4"><br />
suite3:<INPUT id="aefface" type="checkbox" value="suite3" name="5"><br />
</div>
 
<div class="visible">
Vous avez une voiture:<INPUT type="checkbox" value="voiture" name="6" onclick="Cache2('invisible2');">
</div>
 
<div id="invisible2">
Renault:<INPUT id="aefface2" type="checkbox" value="renault" name="7"><br />
Ford:<INPUT id="aefface2" type="checkbox" value="ford" name="8"><br />
Peugeot:<INPUT id="aefface2" type="checkbox" value="peugeot" name="9"><br />
</div><br />
<INPUT type="submit" value="envoyer" name="envoyer">
<INPUT type="reset" value="effacer" name="effacer">
</form>
</body>
</html>
Et ma feuille de style:
Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/* feuille de style du formulaire */
div.visible {
background-color: black;
color: white;
}
 
div#invisible1 {
background-color: grey;
visibility: hidden;
height: 0;
}
 
div#invisible2 {
background-color: grey;
visibility: hidden;
height: 0;
}
Merci