Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/08/2011, 15h21   #1
Membre régulier
 
Homme Lionel ANDRE
Inscription : avril 2005
Messages : 294
Détails du profil
Informations personnelles :
Nom : Homme Lionel ANDRE
Âge : 27
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2005
Messages : 294
Points : 77
Points : 77
Par défaut Fenêtre modale qui ne bloque pas mon application !?

Bonjour,

J'utilise jquery.dialog pour afficher une fenêtre de confirmation avec d'effectuer une action.
Mon problème c'est que la fenêtre s'ouvre mais ne bloque pas le script, du coup d'action est effectuée dans tous les cas

Voici mon script :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var deleteChildren = false;
 
$("#confirmation-dialog")
	.empty()
	.append("Do you want to delete sub-items ?")
	.dialog({
		autoshow : true,
		modal : true,
		resizable : true,
		buttons :
			{
				"Yes" : function(){
					deleteChildren = true;
					$( this ).dialog( "close" );
				},
				"No" : function(){
					deleteChildren = false;
					$( this ).dialog( "close" );
				}
			}
	});
 
alert("COUCOU");
Résultat : l'alerte "COUCOU" s'affiche en même temps que la fenêtre de confirmation...

Comment faire pour bloquer le script jusqu'à la réponse de la boîte de dialogue de confirmation ?
andlio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2011, 10h07   #2
Modérateur
 
Avatar de Golgotha
 
Homme cédric
Développeur informatique
Inscription : août 2007
Messages : 732
Détails du profil
Informations personnelles :
Nom : Homme cédric
Âge : 27
Localisation : France

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

Informations forums :
Inscription : août 2007
Messages : 732
Points : 1 562
Points : 1 562
Envoyer un message via Skype™ à Golgotha
Bonjour,

Je pense que c'est le fonctionnement du javascript qui veux ça

Ce n'est pas comme un programme qui se déroule.

Par contre il y à quelques fonction en javascript qui bloque le navigateur :

alert, prompt et confirm.

Tu pourrait peut être t'inspirer de cela : http://tutorialzine.com/2010/12/bett...x-jquery-css3/
__________________
modérateur webmasters - développements web & php
faq jQuery - règles du forum - faqs web
mon espace perso
Venez participez au deuxième defi Web !
Golgotha est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/08/2011, 10h30   #3
Membre régulier
 
Homme Lionel ANDRE
Inscription : avril 2005
Messages : 294
Détails du profil
Informations personnelles :
Nom : Homme Lionel ANDRE
Âge : 27
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2005
Messages : 294
Points : 77
Points : 77
Salut Golgotha,

Effectivement je comprends ce que tu veux dire. J'ai donc effectué quelques modifications : j'ai déporté le code post-confirmation dans un fonction, et j'ai appelé cette fonction dans les méthodes de callback appelées lors d'un click sur un bouton. Et ça fonctionne !

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
$("#confirmation-dialog")
	.empty()
	.append("Do you want to delete sub-items ?")
	.dialog({
		autoshow : true,
		modal : true,
		resizable : true,
		buttons :
			{
				"Yes" : function(){
					removeSelectedNode(true);
					$( this ).dialog( "close" );
				},
				"No" : function(){
					removeSelectedNode(false);
					$( this ).dialog( "close" );
				}
			}
	});
 
function removeSelectedNode(deleteChildren){
	alert("coucou");
}
Merci Golgotha !
andlio est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h53.


 
 
 
 
Partenaires

Hébergement Web