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 :

Bug post dialog


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 44
    Par défaut Bug post dialog
    Bonjour,

    je rencontre un problème pour effectuer un post.

    Le scénario est le suivant : l'utilisateur arrive sur la page1.php. Dans cette page 1, se trouve un bouton permettant d'ouvrir une popup.
    La popup correspond à page2.php et est un formulaire.
    Dans cette popup, on trouve un bouton. Ce bouton envois les données du formulaire vers page3.php.

    Voici page1 et le code pour ouvrir la popup
    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
    $(function() {
    var $dialog = null;
    	$.ajax({
    		url: 'page2.php',
    		success: function (reponse)
    		{
    		  $dialog = $('<div></div>').html(reponse).dialog({
    			autoOpen: false,
    			title: 'popup',
    			height: 330,
    			width: 420
    		  });;
    		}
    	});
    $( "#create-popup" ).button().click(function() {
    	$dialog.dialog('open');
    	return false;
    });  
    });
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <button id="create-popup">Popup.</button>

    Le popup ouvert, il s'agit d'un simple formulaire avec le bouton:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $(function() {
    	$('#form').submit(function(){
    		$.post('page3.php', $('#form').serialize(),
    			function(data){
    				alert(data);
    			},
    			'html'
    		);
    	});
    });
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <form name="form" id="form" method="post" accept-charset="utf-8">
    ....
    <input type="submit" value="envois">
    </form>

    Et en dernier, je prend ce qui est recu et je le met en database.

    Le problème se situe lors du $.post. Lorsque je clique sur le bouton, la fenêtre est actualisée. Par contre j'ai l'impression que rien n'est envoyé à la page3.

    Il y a un truc que je ne comprend pas, est-ce que quelqu'un a une idée ?

    Merci d'avance

  2. #2
    Membre confirmé
    Inscrit en
    Juillet 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 44
    Par défaut
    Information complémentaire, après debug, je constate que $('#form').serialize() qui est envoyé à la méthode poste contient bien les valeurs saisies dans le formulaire.

    L'action du post est également appelé au bon moment. Est-ce que la fonction post rencontre un problème ou est-ce que j'ai un problème de rafraichissement en lieu et place du post ?

    Merci d'avance !

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    et en intergrant l'initailisation du dialog dasn el callback ?
    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
    $(function() {
    var $dialog = null;
    	$.ajax({
    		url: 'page2.php',
    		success: function (reponse){
    			$dialog = $('<div></div>').html(reponse).dialog({
    				autoOpen: false,
    				title: 'popup',
    				height: 330,
    				width: 420
    			});
     
    			$( "#create-popup" ).button().click(function() {
    			$dialog.dialog('open');
    			return false;
    			})
    		}
    		});
     
     
    });
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre confirmé
    Inscrit en
    Juillet 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 44
    Par défaut
    Si je fais cela, je ne risque pas de ne plus réussir a appeler le popup ?

    Sinon il s'agit bien d'un problème de refresh. J'ai ajouté onSubmit="return false;" dans le form. Avec cela le post fonctionne bien.

    Par contre, je ne parviens pas à fermer la POPUP.

    La variable $dialog n'est pas connue dans la page ou je fais le submit.

    Est-il possible de la récupérer ?

    Merci d'avance !

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    haaaaaaaaa
    j'avais pas vu le submit


    submit = rechargement de page ...
    js ne survit pas à un rechargement de page
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 44
    Par défaut
    Ok, mais avec le return false que j'ai ajouté, la page n'est plus rechargée.

    Donc est-ce que je peux récupérer la fenêtre pour pouvoir la fermer ?

    Merci d'avance !

Discussions similaires

  1. [BUG?] Forum et dernier message posté.
    Par nikalkal dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 4
    Dernier message: 29/05/2006, 15h25
  2. [Swing] bug avec Dialog
    Par shinkyo dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 01/03/2006, 14h29
  3. Bugs post R2 : comment récupérer la dernière version ?
    Par et.et-and-co dans le forum XMLRAD
    Réponses: 5
    Dernier message: 26/09/2005, 03h02
  4. bug Post dans un ADOQuery après un InsertRecord
    Par joebarthib dans le forum Bases de données
    Réponses: 6
    Dernier message: 16/02/2005, 16h54

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