Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > Prototype & Script.aculo.us
Prototype & Script.aculo.us Forum d'entraide sur les frameworks Prototype et Script.aculo.us
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 07/06/2007, 22h33   #1
Nouveau Membre du Club
 
Inscription : juin 2003
Messages : 138
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 138
Points : 29
Points : 29
Par défaut [DOM] prototype et ajax.updater() ou ajax.request()

avec prototype lorsqu'on utilise ajax.Updater() ou ajax.request() on définit une procédure a appelé avec le parametre "onComplete = traiteReponse".
Ma question est :
peut on passer un parametre a la fonction traiteReponse() ?
wincroc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 11h31   #2
Nouveau Membre du Club
 
Inscription : juin 2003
Messages : 138
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 138
Points : 29
Points : 29
personne n'utilise prototype pour ajax ?
wincroc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 14h16   #3
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,

onComplete reçoit déjà un paramètre, c'est l'objet transport, tu ne peux
pas en définir un autre (à ma connaissance bien sur)

Peux tu donner un bout de code pour voir comment on peut faire ?
__________________
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 12/06/2007, 10h58   #4
Nouveau Membre du Club
 
Inscription : juin 2003
Messages : 138
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 138
Points : 29
Points : 29
excusez moi du retard pour répondre.
Prenons par exemple une liste en HTML :
Code :
1
2
3
4
5
6
 
<ul id="container">
 <li>rubrique1</li>
 <li>rubrique2</li>
 <li>rubrique3</li>
</ul>
Ensuite j'ai un script Javascript qui va parcourir la balise <UL> grace au DOM. Et pour chaque balise <LI> trouvé, j'effectue une requete ajax :
Code :
1
2
 
new Ajax.Request(uri,{ parameters : param, onComplete : ecriBloc } );
Je souhaite que la fonction ecriBloc() insere le contenu dans la balise <LI> qui a appelé la requete. Mais je recupere bien l'objet Transport avec le contenu mais je perd l'objet LI a mettre a jour, est ce le premier, deuxieme ......

Je ne sais pas si je suis tres clair. En fait, l'ideal serai que dans ma fonction ecriBloc() je puisse recupere l'objet a mettre a jour en second parametre.

Pour l'instant j'ai contourné le pb avec :
Code :
1
2
 
new Ajax.Updater(li,uri,{ parameters : param, asynchronous:false} );
wincroc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2007, 13h29   #5
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,

Ajax.Updater est fait pour ça. Maintenant tu peux toujours contourner
le problème ainsi

Code :
1
2
3
4
5
6
7
8
9
 
   $('container').immediateDescendants().each( function(e) {
      new Ajax.Request(uri,{ 
         parameters : param, 
         onComplete : function(transport) {     
              ecriBloc(transport, e); 
         }
       });
   });
à tester, bien sur :-)
__________________
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 13/06/2007, 11h26   #6
Nouveau Membre du Club
 
Inscription : juin 2003
Messages : 138
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 138
Points : 29
Points : 29
ah oui, j'avais pas pensé a cette méthode : bravo.
Merci beacoup
wincroc 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 11h29.


 
 
 
 
Partenaires

Hébergement Web