Bonjour,

J'ai un petit soucis. J'ai une page ou j'affiche un texte, lorsque je clique sur ce texte, je veux le masquer et afficher une liste de valeur sur laquel l'utilisateur peut cliquer pour remodifier la valeur initiale.

J'ai un programme qui fonctionne :

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
<html>
<head>
    <title>Test</title>
 
    <script language="javascript" type="text/javascript">
 
        function changeCssStyle(objDivID)
        {
        	switch (this.document.getElementById(objDivID).style.display) {   			
        		case 'block':
        			this.document.getElementById(objDivID).style.display = "none";
        			break;
        		case 'none':
        			this.document.getElementById(objDivID).style.display = "block";
        			break;
        	}                   
        }
 
        function updateValue(objDivID,value)
        {
        	document.getElementById(objDivID).innerHTML = value;
        }
 
    </script>
</head>
<body>
        <div id="div1" style="display:block;" >
        	<p>
        		<a id="a1" href="#" onclick="changeCssStyle('div1');changeCssStyle('div2')">
        			CLICK HERE 
        		</a>
        	</p>
        </div>
 
        <div id="div2" style="display:none;">
			<p>
				<a href="#" onclick="changeCssStyle('div1');changeCssStyle('div2');updateValue('a1','Radio 1')">Radio 1</a>
				<a href="#" onclick="changeCssStyle('div1');changeCssStyle('div2');updateValue('a1','Radio 2')">Radio 2</a>
				<a href="#" onclick="changeCssStyle('div1');changeCssStyle('div2');updateValue('a1','Radio 3')">Radio 3</a>
				<a href="#" onclick="changeCssStyle('div1');changeCssStyle('div2');updateValue('a1','Radio 4')">Radio 4</a>
			</p>
        </div>
</body>
</html>
Par contre, j'aimerais ne PAS utiliser d'id pour identifier les div à mettre à jour, utiliser par exemple plutot 'this' (ou autre chose) !

Est ce que c'est possible ? Si oui, comment ?

Merci d'avance