IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Requete Ajax via Jquery & FancyBox


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 31
    Par défaut Requete Ajax via Jquery & FancyBox
    Bonjour à tous !

    Je viens vers vous car malgré des recherches sur le net, je ne trouve pas de solution au problème que j'ai.
    Ce que je voudrais faire : un formulaire d'inscription, affiché via FancyBox ( petit module dont toute la doc se trouve ) qui puisse envoyer une requête AJAX pour vérifier la disponibilité d'un pseudo et la validité d'un mail, et ensuite afficher le résultat de cette requête dans ce formulaire.

    Ce que j'ai réussi à faire :
    - Afficher le formulaire via FancyBox, sans AJAX qui marche
    - Effectuer la requête AJAX et l'affichage du message de retour quand le formulaire est présent sur la page au départ (donc sans affichage FancyBox)

    Par contre, je bloque sur la façon dont je pourrais faire les deux à la fois.
    J'ai essayé d'appeler mon formulaire via FancyBox de différentes façon ( par AJAX ou par simple affichage d'une DIV ), mais rien n'y fait : le code Jquery ne semble pas actif dans le formulaire lorsque celui-ci est affiché via FancyBox...

    Merci de votre aide,

    Arnaud.

    P.S : à priori, les deux choses devraient être compatible, puisque FancyBox est basé sur Jquery

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonjour.

    Je n'ai pas le temps d'explorer le problème dans le détail, mais je pense qu'il s'agit de fragment de code (FancyBox) créé lors de l'ouverture de la page. Dans ce cas il faut passer par live pour arriver à interagir, voir : http://docs.jquery.com/Events/live#typefn

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 31
    Par défaut
    Merci beaucoup pour ce lien !

    J'ai progressé pas mal, dans le sens où j'arrive maintenant à déclencher ma requête AJAX lorsque le formulaire est affiché avec FancyBox.
    Par contre, je n'arrive pas à modifier le contenu de mon formulaire en fonction du résulat de la requête AJAX.

    Voici un bout de code qui marche :

    Code jQuery : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    $(document).ready(function(){ 
     
     $("#inscriptionSubmit").live("click",function()
    {        
            $.post("traitementInscription.php",{ login:$('#nom').val(),prenom:$('#prenom').val(),password:$('#password').val(),mail:$('#mail').val(),portable:$('#portable').val() } ,function(data)
            {
     
              alert(data);
     
           });
     
           return false;
    });
     
    });

    Par contre, si je veux modifier le contenu d'un paragraphe de mon formulaire, ça ne marche plus :

    Code jQuery : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    $(document).ready(function(){ 
     
     $("#inscriptionSubmit").live("click",function()
    {        
            $.post("traitementInscription.php",{ login:$('#nom').val(),prenom:$('#prenom').val(),password:$('#password').val(),mail:$('#mail').val(),portable:$('#portable').val() } ,function(data)
            {
     
              $("inscriptionMessage").text(data);
     
           });
     
           return false;
    });
     
    });



    Merci encore de votre aide,

    Arnaud.

  4. #4
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir.

    Pour le $. post (), je ne sais pas si cela pourra vous aider, mais jeter un œil sur : http://www.developpez.net/forums/d77...y/#post4481433

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 31
    Par défaut
    Bonsoir,

    A priori, je ne pense pas que le problème vienne du $.post, puisque lorsque je fais un simple alert(data), les valeurs affichées me conviennent.
    Le problème que j'ai est l'affichage dans le formulaire d'un message en fonction de la donnée retournée par $.post.

    Je m'explique :
    Par exemple, l'utilisateur entre un mail invalide, qui est détecté via la requête AJAX lors de l'envoi du formulaire.
    La méthode $.post() me retourne le message ("Mail invalide").
    Ce que je voudrais, c'est afficher ce message en tête de formulaire (sachant que le formulaire est affiché via FancyBox.)

    Des idées ?
    (j'ai cherché du côté de la méthode live...mais je n'ai pas réussi à aboutir pour l'instant)

    Merci de vos réponses,

    Arnaud.

  6. #6
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir.

    Je ne sais pas si je pourrais vous aider, mais sans le code ou un lien vers votre page c'est difficile.

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP, AJAX via jQuery] Envoi d'un formulaire
    Par Gun.Man dans le forum Langage
    Réponses: 1
    Dernier message: 02/11/2012, 22h22
  2. [MVC] Requête AJAX via jQuery mal décodée
    Par Tino13 dans le forum Spring Web
    Réponses: 1
    Dernier message: 27/08/2010, 20h55
  3. Réponses: 4
    Dernier message: 27/02/2010, 22h04
  4. [Jquery]Effet apres requete Ajax
    Par Hightuxdotnet dans le forum jQuery
    Réponses: 5
    Dernier message: 21/09/2008, 13h29
  5. Réponses: 1
    Dernier message: 15/07/2008, 08h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo