Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > AJAX
AJAX Forum sur la programmation AJAX. Avant de poster : Cours AJAX, FAQ AJAX, Toutes les FAQ 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 24/06/2011, 18h25   #1
Invité régulier
 
Inscription : mai 2011
Messages : 49
Détails du profil
Informations forums :
Inscription : mai 2011
Messages : 49
Points : 7
Points : 7
Par défaut problème getelementbyid ajax

Bonjour à tous,

J'utilise, pour mon site fait maison, un script ajax d'ajout en favoris ici :
http://www.aleixcortadellas.com/main/2009/07/05/650/

voici le code ajax :

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
function addremove(favid){
 
 
// Configure those variables as appropriate
 
var divid = 'status';
var url = 'addremove.php';
 
 
// The XMLHttpRequest object
 
var xmlHttp;
try{
xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
}
catch (e){
try{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
}
catch (e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){
alert("Your browser does not support AJAX.");
return false;
}
}
}
 
 
// Generate timestamp for preventing IE caching the GET request
 
fetch_unix_timestamp = function()
{
return parseInt(new Date().getTime().toString().substring(0, 10))
}
 
var timestamp = fetch_unix_timestamp();
var nocacheurl = url+"?t="+timestamp;
 
 
// This code sends the variables through AJAX and gets the response
 
xmlHttp.onreadystatechange=function(){
if(xmlHttp.readyState!=4){
document.getElementById(divid).innerHTML='<img src="spinner.gif">';
}
if(xmlHttp.readyState==4){
document.getElementById(divid).innerHTML=xmlHttp.responseText;
}
}
xmlHttp.open("GET",nocacheurl+"&favid="+favid,true);
xmlHttp.send(null);
 
 
// Finally, some code for button toggle
 
var button = document.getElementById('button');
 
switch(button.name)
{
case 'button0':
  button.src = 'add.png';
  button.name = 'button1';
  break;
case 'button1':
  button.src = '/delete.png';
  button.name = 'button0';
  break;
}
 
}
Le problème c'est que sur ma page j'ai plusieurs articles que je souhaite mettre en favoris, ils ont tous le div id = statuts
ça me rajoute donc d'un coup tous les articles, si je clique sur "ajouter en favoris"...
Y aurait-il une solution pour que ça ne rajoute que l'article sur lequel je clique ?
maxence64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 10h46   #2
Responsable JavaScript & AJAX

 
Avatar de vermine
 
Inscription : mars 2008
Messages : 2 686
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2008
Messages : 2 686
Points : 5 755
Points : 5 755
Bonjour,

Vous avez plusieurs <div> qui ont le même id ?
Un id doit être unique.

Ce n'est pas plutôt favid dont vous avez besoin ? Quelle est la différence entre favid et divid ?
__________________
Elen Poukram - Isegoria - Sandawe
vermine est dé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 01h56.


 
 
 
 
Partenaires

Hébergement Web