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 :

Résultat d'une requête ajax qui ne s'affiche pas dans un <div>


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut Résultat d'une requête ajax qui ne s'affiche pas dans un <div>
    Bonsoir, voila le topo, depuis plusieurs heures je ne trouve pas la solution a mon problème. Donc je me suis décidé a poster :
    J'ai une modale (bootstrap) dans lequel j'ai un form et lorsque je soumet le formulaire je souhaite afficher le résultat de la page php dans mon <div> situé en dessous de mon form, tout ca en ajax.

    j'ai donc fait ceci :

    Pour la modale qui contient le formulaire :
    Code : 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    $(document).ready(function () { // quand la page est chargée
    // Lorsque je soumets le formulaire
        $('#monForm').on('submit', function(e) {
            e.preventDefault(); // J'empêche le comportement par défaut du navigateur, c-à-d de soumettre le formulaire
            var $this = $(this); // L'objet jQuery du formulaire
            // Je récupère les valeurs
    		var idmod = $('#idMod').val();
            var pass1 = $('#pass1').val();
            var pass2 = $('#pass2').val();
                // Envoi de la requête HTTP en mode asynchrone
                $.ajax({
                    url: 'modal_modifier_passe_sql.php', //ma page
                    type: 'POST',
                    data: $this.serialize(), // Je sérialise les données (j'envoie toutes les valeurs présentes dans le formulaire)
                    success: function(data){ 
    					$("#result").html(data);
    				}
                });
        });
     
    });
    </script>
                <div class="modal-dialog modal-lg">
     
     
        <!-- Modal content-->
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal">&times;</button>
            <h4 class="modal-title">Modifier mon mot de passe de connexion !</h4>
          </div>
          <div class="modal-body">
                   <form class="well" id="monForm" action="modal_modifier_passe_sql.php" method="post">
                  <div class="form-group">
         			 <label for="texte">Nouveau mot de passe : </label>
                     <input type="hidden" name="idMod" value="<?php echo $var_id; ?>">
                     <input type="text" id="pass1" name="pass1" class="form-control" />
                     <p class="help-block">4 caractéres minimum</p>
      		      </div>
                   <div class="form-group">
         			 <label for="texte">Saisir à nouveau le mot de passe : </label>
                     <input type="text" id="pass2" name="pass2" class="form-control" />
      		      </div>
                 	  <input type="submit" id="envoyer" value="Envoyer" />
                  <button class="btn btn-default" id="myFormSubmit" data-dismiss="modal">Close</button>
                   </p>
    		  </form>
     
    <div class="result"></div>
    Mais le soucis c'est que le resultat s'affiche toujours dans une nouvelle fenetre, et pas dans la <div> de ma modale, et je ne vois vraiment pas ou ce situe le probléme !!!!!
    D'avance merci pour vos explications

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 524
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 524
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    success: function(data){ 
    					$("#result").html(data);
    				}
    tu appelle la div avec son id "result" pourtant la div ne contient pas d'id, mais plutôt contient une class "result".
    donc soit tu ajoute id="result" a ton element html div, soit tu change l'appel avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    success: function(data){ 
    					$(".result").html(data);
    				}

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    salut toufik j'ai rajouté id="result" et a présent mon formulaire se ferme tout de suite en ayant bien exécuter la requête ajax.
    Mais ma modal se ferme et la div ne s'affiche pas, je vais cherche un peu de mon coté la raison
    , deja merci pour ton aide

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    j'ai essayé ceci, au retour de ma fonction $ajax :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    success: function(data){ 
    					  alert(data);
    				}
    et même dans ce cas, je n'obtient pas le résultat de ma requête dans une fenêtre, et mon form qui est dans ma modale se ferme aussitôt !
    je ne vois pas ce qui ne va pas !

  5. #5
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 524
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 524
    Par défaut
    Citation Envoyé par gastoncs
    et même dans ce cas, je n'obtient pas le résultat de ma requête dans une fenêtre
    est-ce que tu as vérifié le XHR dans l'outil de développement du navigateur? ton fichier php se charge correctement avec tes données envoyées?
    regarde un peu cette discussion, ça ressemble a ton cas.

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    Merçi pour ton aide toufik il s'agissait bien du meme soucis que le post que tu a mis en lien.
    Encore merci

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

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