Changer un texte au clic en JavaScript

Résolu
AceEye Messages postés 4 Statut Membre -  
 heimanuter -
Bonjour,

Je souhaiterais créer un lien qui changerait à chaque clic du style : Ouvrir puis Fermer. Le but de ce lien est d'ouvrir un div caché et donc changer le texte du lien pour informer de ce qui est possible de faire.

J'ai déjà un petit code, mais ça ne fonctionne pas. Quelqu'un peut me donner un petit conseil ?

Voilà mon code :


<script type="text/javascript">
	function transformer(id){
		var texte = document.getElementById(id).innerHTML;
		if (texte=="Plus d'informations...") {
			document.getElementById(id).innerHTML = "Moins d'informations...";
		}
		else {
			document.getElementById(id).innerHTML = "Plus d'informations...";
		}
	}
</script>

<a href="javascript:visibilite('infos_1');" onclick="javascript:transformer(this);">Plus d'informations...</a>

<div id="infos_1" style="display:none;">
	Les informations à insérer
</div>



Merci d'avance à tous ! :)
A voir également:

2 réponses

Lilita
 
Bonjour. Comment adapter ceci à un bouton du type une image flèche vers le bas, et dés qu'on appuie la flèche se transforme en flèche vers le haut ?

Merci.
1
ben85350 Messages postés 622 Statut Membre 27
 
Salut !
C'est un lien (<a href =...) ou un bouton qui permet d'afficher ton div ?
0
AceEye Messages postés 4 Statut Membre
 
C'est bien un lien et non un bouton. Le lien affiche et cache le div, et son texte change en fonction de l'état du div (ouvert ou fermé). Dans mon code, je teste juste le texte du lien et en fonction, il se change en un autre...
0
ben85350 Messages postés 622 Statut Membre 27 > AceEye Messages postés 4 Statut Membre
 
J'ai jamais tester avec un lien !
Essaie peut-être en faisant comme cela :
var texte = document.getElementById(id).value;
Avec id l'id de ton ton lien si je comprends bien
0
AceEye Messages postés 4 Statut Membre > ben85350 Messages postés 622 Statut Membre
 
Merci :)

Malheureusement, j'ai essayé et ça ne marche pas.

Pour un peu plus d'info, id est une variable qui stocke l'id du lien texte, mais sans que celui-ci en ai réellement un puisque je marque "this" quand j'appelle la fonction.

Si je fais ça, c'est qu'en fait, il y aura plusieurs bloc div cachés et donc, tout est généré dynamiquement avec des id uniques pour chaque div.

Je ne sais pas si je suis bien clair... Désolé :s
0
Sims' > AceEye Messages postés 4 Statut Membre
 
Hello,

Voici ton code corrigé, ton texte change...

<script type="text/javascript">
	function transformer(obj){
		var texte = obj.innerHTML;
		if (texte=="Plus d'informations...") {
			obj.innerHTML = "Moins d'informations...";
		}
		else {
			obj.innerHTML = "Plus d'informations...";
		}
	}
</script>

<a href="javascript:visibilite('infos_1');" onclick="javascript:transformer(this);">Plus d'informations...</a>

<div id="infos_1" style="display:none;">
	Les informations à insérer
</div>
0
AceEye Messages postés 4 Statut Membre > Sims'
 
Oh yeah, super ! Merci beaucoup !

Bonne journée à toi ! :D

Adrian
0