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 05/02/2011, 21h37   #1
Membre régulier
 
Inscription : décembre 2009
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2009
Messages : 44
Points : 90
Points : 90
Par défaut Recharger Facebox AJAX

Bonsoir,

J'utilise Facebox sur mon site pour afficher des informations par dessus la page lorsque l'on clique sur un lien.
Dans la Facebox d'autres liens apparaissent et j'aimerais pouvoir rafraichir celle ci lorsque l'on clique sur un de ces liens, mais ça ne marche pas

Voilà ce que j'ai:

Code :
<a href="affiche.php?id=1234" rel="facebox">lien</a>
Avec ça la facebox s'affiche bien.

Les liens que je veux utiliser pour rafraichir la facebox sont du type:
Code :
<a href="#" onclick="javascript:refresh_affiche(1234); return false;">Lien</a>
La fonction refresh_affiche:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function refresh_affiche(id) {
 
	var xhr = getXHR ();
 
		xhr.onreadystatechange = function () {
		if (xhr.readyState == 4 && xhr.status == 200)
			document.getElementById('test').innerHTML = xhr.responseText;
	}
 
	url = 'affiche.php?id=' + id + '&code=1';
	xhr.send(url);
 
	return false;
}
Tout le contenu de la facebox, dans la page affiche.php est dans une balise <div id="test"></div>

J'aimerais donc recharger la avec l'URL qui est dans la variable url de la fonction refresh_affiche.

La console d'erreur Java me sort:
Citation:
Erreur*: $("#facebox .popup").outerWidth is not a function
Citation:
Erreur*: uncaught exception: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIXMLHttpRequest.send]" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)" location: "JS frame :: http://localhost/site/js/ajax_coms.js?_=1296937489194 :: refresh_affiche :: line 70" data: no]
(La ligne 70 correspond à xhr.send.

Merci pour votre aide.
adc15 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2011, 13h31   #2
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
Bonjour,
Citation:
<a href="#" onclick="javascript:refresh_affiche(1234); return false;">Lien</a>
Code html :
<a href="#" onclick="refresh_affiche(1234); return false;">Lien</a>
Apparemment tu veux utiliser la methode GET.
Code :
1
2
3
	url = 'affiche.php?id=' + id + '&code=1';
	xhr.open("GET", url,true);
	xhr.send(null);
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2011, 21h04   #3
Membre régulier
 
Inscription : décembre 2009
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2009
Messages : 44
Points : 90
Points : 90
Je n'ai plus la première erreur dans la console Java, mais ça ne marche toujours pas.
Et puis je crois que le paramètre GET est par défaut si on en précise pas un autre.
adc15 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2011, 06h23   #4
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
Vire aussi le
Citation:
return false;
et montre nous ton code HTML généré.
Citation:
Et puis je crois que le paramètre GET est par défaut si on en précise pas un autre.
En AJAX il faut préciser.

A+.
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 15h09   #5
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 802
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 802
Points : 35 807
Points : 35 807
Dans ton code, tu n'as pas de xhr.open()
Inutile de se demander pourquoi ça ne marche pas
__________________
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 08/02/2011, 18h10   #6
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
Citation:
Envoyé par Bovino Voir le message
Dans ton code, tu n'as pas de xhr.open()
C'est déjà proposé dans mon post antécédent mais il ne voulais nous dire de plus.
Citation:
Envoyé par adc15
Je n'ai plus la première erreur dans la console Java, mais ça ne marche toujours pas.
Je ne vois pas ce que fait le console java avec ça
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 23h29   #7
Membre régulier
 
Inscription : décembre 2009
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2009
Messages : 44
Points : 90
Points : 90
Citation:
Envoyé par andry.aime Voir le message
En AJAX il faut préciser.
Merci pour l'info, je sais pas pourquoi j'avais ça dans la tête...

Citation:
Envoyé par Bovino Voir le message
Dans ton code, tu n'as pas de xhr.open()
Inutile de se demander pourquoi ça ne marche pas
Effectivement

Citation:
Envoyé par andry.aime Voir le message
C'est déjà proposé dans mon post antécédent mais il ne voulais nous dire de plus.
Ou peut etre qu'il a autre chose à faire que de s'occuper de ça...
Ca fait moins de deux jours, ça reste très raisonnable comme délai de réponse...

Citation:
Envoyé par andry.aime Voir le message
Je ne vois pas ce que fait le console java avec ça
Rien effectivement, je me suis mélangé les pinceaux, je parlais de la console d'erreur de Firefox, mais bon je pense que tu avais saisi ce que je voulais dire.

Bref, pour en revenir à mon problème.
En rajoutant xhr.open ça ne marchait toujours pas, du coup j'ai essayé en POST et là ça marche...
Je vais me contenter de ça pour le moment !

Merci pour vos réponses en tout cas.

Bonne soirée
adc15 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2011, 06h43   #8
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
Citation:
du coup j'ai essayé en POST et là ça marche...
, vu que les variables sont passé en URL (tu peux quand même récupérer avec GET coté serveur mais c'est pas zolizoli comme façon), en plus avec POST tu as besoin de
Code :
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

Bon enfin, un truc qui tombe en marche
andry.aime 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 08h38.


 
 
 
 
Partenaires

Hébergement Web