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 :

UI dialog et .load chargement d'une page dans div


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 9
    Par défaut UI dialog et .load chargement d'une page dans div
    Bonjour tous le monde j’ai un probleme avec mon dialog UI lorsque j’utilise mon dialog UI normalement sa fonction parfaitement.
    Mais lorsque je veut ouvrir mon dialog UI dans un page externe a l’aide du .load sa fonctionne mal
    Lors du 1er clique sa marche
    Mais si je clique une 2eme fois mon dialog vas ouvrir celle que j’ai ouvert au 1er click et ca vas m’ouvrir mon nouveau dialog .
    Donc si je click une 3eme fois bah j’aurais 3 fenetre (dialog UI)qui s’ouvre
    Ses comme si mon .load me creé une boucle alors que des que j’enleve .load tous fonctionne parfaitement .
    Voici mon code
    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
     
    var $dialog = $('<div></div>')					
    $dialog
    .load('index/edit/id/'+$(el).attr('name'+"#content")			
    .dialog({
     
    autoOpen: false,
    height: 400,
    width: 550,
    modal: true,
    buttons: {
    	'Create an account': function() {		
    	if (bValid) {			
    		$("form#form_edit").submit();
    		$(this).dialog('close');
    	}
    },
    Cancel: function() {
    	$dialog.dialog('close');
    	}
    },
    close: function() {
    	allFields.val('').removeClass('ui-state-error');
    	}
    });
     
    $("a#edit").click(function() {
    	$dialog.dialog('open');	
    });
    Sous Firefox et Chrome sa fonctionne tres bien mais sur IE sa m'ouvre plusieurs DIALOG

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 20
    Par défaut
    J'ai rencontré ce problème avec des dialog multiples.

    Voici comment je l'ai résolu : je détruis puis efface tous les éléments dialog avant d'en créer un nouveau.

    Avec ton code, ça donne ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $("a#edit").click(function() {
            $('.ui-dialog').dialog("destroy").remove();
    	$dialog.dialog('open');	
    });

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 9
    Par défaut
    Ta solution ne fonctionne pas lorsque j’insère la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $('.ui-dialog').dialog("destroy").remove();
    Ma dialog ne s'ouvre pas du tout

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 20
    Par défaut
    Autre manière de procéder : supprimer la boîte de dialog, ainsi que le contenu HTML généré dans la DIV qu'elle englobe (pour éviter que des objets avec le même ID soient créés), lors de la fermeture de la boîte (function close()) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $('a#edit').dialog({
                        close: function() {
                            $(this).html('').dialog("destroy").remove();
                        }
    });

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 9
    Par défaut
    Merci sa fonctionne

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

Discussions similaires

  1. Chargement d'une page (jQuery : .load) puis suite de commande avec une div
    Par IceBlackSanctum dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 15/05/2015, 12h55
  2. Chargement d'une page dans un IFRAME
    Par GérardMartinelli dans le forum jQuery
    Réponses: 6
    Dernier message: 07/03/2014, 09h23
  3. Chargement d'une page dans la même form
    Par Mistraldor dans le forum Débuter
    Réponses: 3
    Dernier message: 21/06/2011, 11h22
  4. chargement d'une page dans un viewport
    Par DiverSIG dans le forum Ext JS / Sencha
    Réponses: 5
    Dernier message: 25/02/2011, 11h31
  5. Réponses: 1
    Dernier message: 18/03/2007, 14h48

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