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 :

création d'une dialogbox


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 854
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 854
    Par défaut création d'une dialogbox
    bonjour,

    je me suis fait une petite fonction qui affiche une dialogBox paramêtrable avec deux boutons (oui/non). Le code pour l'afficher :
    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
    // affiche la boite de confirmation
    function showConfirmBox(title, str, funcYes){
     
    	$("#dgbox_confirm h3").text(title); // change le titre
    	$("#dgbox_confirm #cfm_msg").text(str); // change le texte 
     
    	// gestion du bouton Yes	
    	$("#dgbox_confirm #btnYes").click(funcYes);
     
    	// gestion du bouton No
    	$("#dgbox_confirm #btnNo").click(function(){
    		alert("fermeture");
    		$("#dgbox_confirm").hide();
    	});
     
     
    	$("#dgbox_confirm").show();
    }
    => je ne comprends pas pourquoi mais
    - lorsque j'ouvre pour la 1ere fois la dialogBox et que je clic sur No, alert("fermeture"); s'affiche 1 fois avant de cacher la div
    - lorsque j'ouvre pour la 2nd fois la dialogBox et que je clic sur No, alert("fermeture"); s'affiche 2 avant de cacher la div
    - lorsque j'ouvre pour la 3ieme fois la dialogBox et que je clic sur No, alert("fermeture"); s'affiche 3 avant de cacher la div
    ...

    D'où vient le problème et comment le résoudre ?
    => je pense que le problème doit venir de la déclaration de mes évènements


    merci d'avance,

  2. #2
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 2
    Par défaut
    A chaque ouverture de la dialog box, un évènement click est rajouté.
    Il faut placer le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // gestion du bouton Yes	
    	$("#dgbox_confirm #btnYes").click(funcYes);
     
    	// gestion du bouton No
    	$("#dgbox_confirm #btnNo").click(function(){
    		alert("fermeture");
    		$("#dgbox_confirm").hide();
    	});
    à l'extérieur de la fonction d'ouverture.
    Avec jQuery les évènements sont ajoutés et ne remplacent pas l'évènement click précédent.

    Dominique
    http://helpdesk.toitl.com/

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 854
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 854
    Par défaut
    ok merci pour l'info.

    Il n'y a vraiment aucun moyen pour écraser l'évènement ?

  4. #4
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 2

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 854
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 854
    Par défaut
    ok merci ça marche nickel

    Sans utiliser unbind, j'arrive à gérer correctement le bouton No mais pour le bouton yes (qui utilise funcYes), je ne vois pas comment faire (vu que funcYes peut changer de valeur après l'initialisation) ?
    => c'est possible ?

  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
    Bonjour.

    Il m'est impossible de tester sans le reste du code. Essayer :
    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
    // affiche la boite de confirmation
    function showConfirmBox(title, str, funcYes){
     
    	$("#dgbox_confirm h3").text(title); // change le titre
    	$("#cfm_msg").text(str); // change le texte 
     
    	// gestion du bouton Yes	
    	$("#btnYes").click(function(){
    		funcYes();
    		return false;
    	});
     
    	// gestion du bouton No
    	$("#btnNo").click(function(){
    		alert("fermeture");
    		$("#dgbox_confirm").hide();
    		return false;
    	});
     
    	$("#dgbox_confirm").show();
    }

    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. Réponses: 14
    Dernier message: 09/04/2004, 13h44
  2. [amc designer] création d'une base postgresql
    Par david42 dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 12/03/2004, 11h08
  3. Création d'une base avec IbConsole
    Par Lucien dans le forum Outils
    Réponses: 3
    Dernier message: 02/03/2004, 18h34
  4. création d'une batabse .gdb
    Par jejestyle dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/02/2004, 00h29
  5. [BES] Création d'une variable d'environnement
    Par NGI80 dans le forum Autres
    Réponses: 2
    Dernier message: 17/10/2002, 07h31

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