Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/06/2011, 17h30   #1
Invité de passage
 
Inscription : mars 2011
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 14
Points : 0
Points : 0
Par défaut Afficher un DIV apres une action ajax

Bonjour,

Je pense que c'est tout simple mais je n'arrive pas trouver la solution.

J'ai 2 divs l'un en dessous de l'autre.
1 est caché, et l'autre est visible.
J'aimerai qu'au onClick du premier, le div se cache et l'autre div invisible s'affiche.

Voici les divs :

Code :
1
2
<div id="like" onClick="like()" class="action-like"></div>
<div id="likeok" class="action-ok" style="display:none"></div>
Mon code javascript :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function like()
		{
		getXhr()
		xhr.onreadystatechange = function()
			{
                      if(xhr.readyState == 1){
                       document.getElementById().className = 'action-like-load';
                       document.getElementById().onclick = '';
                        }
			 if(xhr.readyState == 4 && xhr.status == 200)
			 {
			 document.getElementById().innerHTML=xhr.responseText;
                         document.getElementById().className = 'action-like-ok nocursor';
                         document.getElementById).onclick = '';
			 }
			}
		xhr.open("GET","action.php5",true);
                xhr.send(null);
}
Un avis ?

Merci
vince62fr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 17h34   #2
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 803
Points : 35 803
Citation:
Envoyé par vince62fr
Un avis ?
Code :
document.getElementById().innerHTML=xhr.responseText;
A quel id tu fais référence ?
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 21h49   #3
Invité de passage
 
Inscription : mars 2011
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 14
Points : 0
Points : 0
En fait j'avais simplifié mon code pour que ça soit plus lisible mais je me rend compte que j'en ai oublié une partie voila le bon :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function like(id, id2, id3, id4, id5, id6)
		{
		getXhr()
		xhr.onreadystatechange = function()
			{
                      if(xhr.readyState == 1){
                       document.getElementById(id, id2, id3, id4, id5, id6).className = 'action-like-load';
                       document.getElementById(id, id2, id3, id4, id5, id6).onclick = '';
                        }
			 if(xhr.readyState == 4 && xhr.status == 200)
			 {
			 document.getElementById(id, id2, id3, id4, id5, id6).innerHTML=xhr.responseText;
                         document.getElementById(id, id2, id3, id4, id5, id6).className = 'action-like-ok nocursor';
                         document.getElementById(id, id2, id3, id4, id5, id6).onclick = '';
			 }
			}
		xhr.open("GET","action.php5?EAN="+id2+"&ID2="+id3+"&IdTRack="+id4+"&type="+id5+"&action="+id6+"",true);
                xhr.send(null);
}
 
 
 
<div id="like1" onClick="like(<?php echo "'like1"', '".$EAN."', '".$id."', '".$addthisIdTrack."', '".$existTrack."', 'like'";?>)" class="action-like"></div>
vince62fr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 22h26   #4
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 943
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 943
Points : 4 770
Points : 4 770
Bonsoir,
la méthode getElementById n'admet qu'un seul paramètre et non une multitude, tu sera donc obligé de faire une boucle
exemple :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<html>
<head>
</head>
<body>
<div id="id1"></div>
<div id="id2"></div>
<div id="id3"></div>
<script type="text/javascript">
function afficheText(){
  var i, oElem;
  for( i = 0; i < arguments.length; i++){
    oElem = document.getElementById( arguments[i]);
    oElem.innerHTML = arguments[i];
  }
}
afficheText ('id1', 'id2', 'id3');
</script>
</body>
</html>
NoSmoking est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h57.


 
 
 
 
Partenaires

Hébergement Web