|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : octobre 2009 Messages : 17 ![]() |
Bonjour à tous,
Je réalise une boîte de dialogue en JQuery avec la fonction dialog(). Lorsque l'on clique sur un bouton, la boite de dialogue s'affiche et une page (A) est chargée dedans par Ajax. Mais (A) possède une liste déroulante fonction des caractères entrés au clavier (recherche automatique dans la BD). Donc un autre appel Ajax effectué dans le premier. Comment faire pour que cet autre appel fonctionne ? On m'a déjà parlé de delegate ou live une fois, mais je n'ai pas l'impression que ça fonctionne. Si c'est vraiment ça qu'il faut utiliser, pourrait-on me donner un exemple? Merci d'avance |
|
|
00
|
|
|
#2 | ||||||||
|
Membre Expert
![]() ![]() Mathieu ROBINDéveloppeur Web Inscription : mai 2006 Messages : 1 116 ![]() |
Oui et non.
Oui pour les delegate, non pour live. Live Cette méthode permet de créer à la volée un gestionnaire d'évènements sur tout nouvel élément ciblé créé dans le DOM. Admettons que tu fasses ça : Code :
Code :
Delegate Dans ton cas, les delegate ne sont pas le bon terme mais l'idée est là. Il faut que tu utilises des objets Deferred, méthodologie apportée avec jQuery 1.5 (voir http://api.jquery.com/category/deferred-object/ ) Jusqu'à jQuery 1.5, tu étais obligé de faire ça pour imbriquer des appels Ajax : Code :
Code :
Bon j'ai vachement simplifié le truc, il y a pas de paramètre supplémentaire dans les appels Ajax mais ça permet de dégager l'idée principale. Tu dois faire quelques contrôles comme toujours sur ce que te renverra via la méthode done tout comme tu devais déjà le faire sur l'évènement success. Si tu veux gérer des appels imbriqués dans le cas d'échec de la requête, tu peux, à la place de done(), utiliser la méthode fail(). Plus de renseignements ici : http://www.mathieurobin.com/2011/02/...te-jquery-1-5/ (aux modos, j'ai regardé rapidement la FAQ, j'ai pas trouvé de QR là dessus, voir peut-être à en faire une, si j'ai le temps, j'essaierai d'en formuler une)
__________________
Mon blog techno et son billet hebdomadaire sur l'actualité jQuery. Et mon blog cuisine pour une personne. Le bouton ne masse pas les pieds, mais ça aide la communauté.
|
||||||||
|
00
|
|
|
#3 |
![]() ![]() Daniel HagnoulÉtudiant perpétuel Inscription : février 2009 Messages : 3 221 ![]() |
Bonjour
FAQ jQuey : Comment puis-je utiliser l'objet jQuery.Deferred ? Cette Q/R est une bonne introduction à ton lien, et le contenu de ton lien serrait un troisième exemple de bonne qualité
__________________
FAQ jQuery Mon cahier d’exercices sur jQuery & CoSi un message vous a aidé ou vous semble pertinent, votez pour lui ! ![]() |
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Mathieu ROBINDéveloppeur Web Inscription : mai 2006 Messages : 1 116 ![]() |
Ah j'avais pas vu, c'est cool ça. Super, merci Daniel, comme d'hab^^
__________________
Mon blog techno et son billet hebdomadaire sur l'actualité jQuery. Et mon blog cuisine pour une personne. Le bouton ne masse pas les pieds, mais ça aide la communauté.
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : octobre 2009 Messages : 17 ![]() |
Bonjour,
Merci pour ta réponse très complète. Je vais me plonger là-dedans pour bien assimiler =) Et merci à Daniel pour son apport. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com