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 28/04/2008, 17h06   #1
Membre du Club
 
Inscription : décembre 2007
Messages : 121
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 121
Points : 40
Points : 40
Par défaut Lancer une 2eme fonction apres la reponse de la 1ere fonction

Si j'ai bien compris le tuto, le CALLBACK dans ajax permet de "faire une action" apres avoir recu la reponse du serveur.

Je me sert d'ajax pour tester un formulaire. Je voudrais apres la reponse du serveur, lancer une autre fonction. Voila ma fonction:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<script type="text/javascript" src="XHRConnection.js"></script>
<script type="text/javascript">
 
function remplirChamp1(obj) 
{
	document.getElementById('un').innerHTML = obj.responseText;
}
 
 
function sendData1()
{
var XHR = new XHRConnection();
XHR.appendData('Nom', document.getElementsByName('Nom')[0].value);
XHR.appendData('Prenom', document.getElementsByName('Prenom')[0].value);
XHR.sendAndLoad('sendinscription.php', 'POST', remplirChamp1);
}
et mon autre fonction:

Code :
1
2
3
4
5
6
function rafraichir() {
	var XHR = new XHRConnection();		
	XHR.setRefreshArea('trois');
	XHR.appendData('');
	XHR.sendAndLoad("classement.php", "POST");
}
Comment faire afin de lancer la deuxieme fonction apres la reponse de la premiere ?

Help
lelapinrusse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 09h24   #2
Rédacteur/Modérateur
 
Avatar de marcha
 
Homme Marc Chappuis
Développeur Web
Inscription : décembre 2003
Messages : 1 535
Détails du profil
Informations personnelles :
Nom : Homme Marc Chappuis
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2003
Messages : 1 535
Points : 2 206
Points : 2 206
Salut,

Tu peux donner le code de XHRConnection ?
__________________
Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !
marcha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 16h54   #3
Membre du Club
 
Inscription : décembre 2007
Messages : 121
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 121
Points : 40
Points : 40
XHR, c'est une bibliotheque qui gere juste la connexion, je ne peux pas t'en dire plus...

XHRConnection propose les méthodes suivantes:
ref XHRConnection (boolean debug)
Le constructeur. Si vous voulez spécifier le débuggage, passez true en paramètre.
void setDebugOn ()
Active l'affichage des exceptions
void setDebugOff ()
Désactive l'affichage des exceptions
void resetData ()
Permet d'initialiser la variable contenant les données à envoyer
void appendData (string pfield, string pvalue)
Permet d'alimenter les données à envoyer, accepte un nom de variable et une valeur.
boolean sendAndLoad (string url, string httpMode [, ref callBack])
Envoi des informations à la page url en utilisant la méthode HTTP httpMode
lelapinrusse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 17h04   #4
Rédacteur/Modérateur
 
Avatar de marcha
 
Homme Marc Chappuis
Développeur Web
Inscription : décembre 2003
Messages : 1 535
Détails du profil
Informations personnelles :
Nom : Homme Marc Chappuis
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2003
Messages : 1 535
Points : 2 206
Points : 2 206
Salut,

Il semble que cette bibliothèque soit trop spécifique, tu peux attaquer
à un niveau plus bas en utilisant directement l'objet XmlHttpRequest
qui lui propose une callback lors des échanges avec le serveur.

Un exemple très basique ici http://www.coursweb.ch/javascript/ajax-request.html

Sinon il y a aussi les tuto ajax sur développez
__________________
Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !
marcha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 17h38   #5
Membre du Club
 
Inscription : décembre 2007
Messages : 121
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 121
Points : 40
Points : 40
Il y a pourtant ceci:

sendAndLoad (string url, string httpMode [, ref callBack])

Vu que je suis débutant en ajax, je me demandais si ce n'étais pas possible avec ca ?
lelapinrusse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 17h47   #6
Rédacteur/Modérateur
 
Avatar de marcha
 
Homme Marc Chappuis
Développeur Web
Inscription : décembre 2003
Messages : 1 535
Détails du profil
Informations personnelles :
Nom : Homme Marc Chappuis
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2003
Messages : 1 535
Points : 2 206
Points : 2 206
Ok, alors essaye

sendAndLoad (url, httpMode , function() { alert('ok'); } );
__________________
Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !
marcha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 18h06   #7
Membre du Club
 
Inscription : décembre 2007
Messages : 121
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 121
Points : 40
Points : 40
Je me dis que je n'utilise que cette bibliotheque pour mon site donc...
Je fais juste des raffraichissement de div, des envoie dans une table et des test de formulaire...

Donc je dois rajouter ce que tu viens de me donne à cette ligne:

Code :
1
2
 
XHR.sendAndLoad('sendinscription.php', 'POST', remplirChamp1);
et la fonction a declencher en callback est: rafraichir1()

Comme ca ?

Code :
1
2
 
XHR.sendAndLoad ('sendinscription.php', 'POST', remplirChamp1, rafraichir1() { alert('ok'); } );
lelapinrusse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/05/2008, 14h50   #8
Rédacteur/Modérateur
 
Avatar de marcha
 
Homme Marc Chappuis
Développeur Web
Inscription : décembre 2003
Messages : 1 535
Détails du profil
Informations personnelles :
Nom : Homme Marc Chappuis
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2003
Messages : 1 535
Points : 2 206
Points : 2 206
Salut,

Code :
1
2
3
4
5
 
function rafraichir1() {
  alert('ok');
}
XHR.sendAndLoad ('sendinscription.php', 'POST', remplirChamp1, rafraichir1);
ou
Code :
1
2
 
XHR.sendAndLoad ('sendinscription.php', 'POST', remplirChamp1, function() { alert('ok'); } );
__________________
Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !
marcha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/05/2008, 18h36   #9
Membre du Club
 
Inscription : décembre 2007
Messages : 121
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 121
Points : 40
Points : 40
J'ai testé les deux facons que tu m'as donné mais ca ne marche pas.
En fait, il n'y a pas d'erreur générée et la premiere fonction est executee mais pas la deuxieme (le callback)...

Quelqu'un peut-il m'aider ?

Peut-etre quelqu'un qui utilise la bibliotheque XHR ?
lelapinrusse est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h01.


 
 
 
 
Partenaires

Hébergement Web