Accueil > > > BOITE DE DIALOGUE DE VALIDATION MODAL
BOITE DE DIALOGUE DE VALIDATION MODAL
Information sur la source
Description
Voici une boite personnalisé, qui émule la "modalité" explication : -- Appel de la boite de dialogue demandant à un utilisateur une question qu'il doit valider par "oui" ou "non" , le reste du site devient inaccéssible, tant qu'il n'a pas validé. -- Personalisation du titre de la boite , du texte souhaité , du texte des deux boutons, des couleurs... gestion des styles par css uniquement un appel a la fonction a faire , car les éléments sont créers par le DOM. en espérant que cela soit utile :)
Source
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
- <title>Boite de validation modale</title>
- <style type="text/css">
- .titreBoite{
- display:block;
- border-bottom:1px solid #ccc;
- background-color:#FF0000;
- }
- .boite{
- width:350px;
- height:200px;
- border:1px solid #ccc;
- background-color:#999999;
- position:absolute;
- top:50%;
- margin-top:-100px;
- left:50%;
- margin-left:-175px;
- z-index:5001;
- }
- .btn1{
- position:absolute;
- left:10px;
- top:150px;
- }
- .btn2{
- position:absolute;
- right:10px;
- top:150px;
- }
- .question{
- display:block;
- width:90%;
- margin-left:auto;
- margin-right:auto;
- margin-top:15px;
- }
- .boiteModal{
- position:absolute;
- left:0px;
- top:0px;
- width:100%;
- height:100%;
- background-color:#FFFF00;
- z-index:5000;
- }
- </style>
- <script type="text/javascript">
- function boiteChoix(titre,titreBouton1,titreBouton2,texteQuestion){
- //#### PARTIE CONCERNANT LE TITRE DE LA BOITE ####//
- var titreBoite = titre;
- //On ajoute un élément de type span
- var newTitre = document.createElement('span');
- //On affecte le style "sélectionné" au titre qui viens d'etre inséré
- newTitre.setAttribute("class","titreBoite");
- //définition du style pour ie
- newTitre.setAttribute("className","titreBoite");
- newTitre.innerHTML = titreBoite;
-
- //#### AJOUT DES 2 BOUTONS AVEC LEUR LABEL ####//
- var titreBtn1 = titreBouton1;
- //On ajoute un élément de type span
- var newBtn = document.createElement('button');
- //On affecte le style "sélectionné" au titre qui viens d'etre inséré
- newBtn.setAttribute("class","btn1");
- //définition du style pour ie
- newBtn.setAttribute("className","btn1");
- newBtn.setAttribute("value",titreBtn1);
- newBtn.setAttribute("onclick","recupEtat(true);");
- //Définition de l'action pour ie
- newBtn.onclick = function recupEtat(){var elementASupp = document.getElementById('boiteChoix');document.body.removeChild(elementASupp);elementASupp = document.getElementById('boiteModal');document.body.removeChild(elementASupp);return true;};
- newBtn.innerHTML = titreBtn1;
- //## bouton 2 ##//
- var titreBtn2 = titreBouton2;
- //On ajoute un élément de type span
- var newBtn2 = document.createElement('button');
- //On affecte le style "sélectionné" au titre qui viens d'etre inséré
- newBtn2.setAttribute("class","btn2");
- //définition du style pour ie
- newBtn2.setAttribute("className","btn2");
- newBtn2.setAttribute("value",titreBtn2);
- newBtn2.setAttribute("onclick","recupEtat(false);");
- //Définition de l'action pour ie
- newBtn2.onclick = function recupEtat(){var elementASupp = document.getElementById('boiteChoix');document.body.removeChild(elementASupp);elementASupp = document.getElementById('boiteModal');document.body.removeChild(elementASupp);return false;};
- newBtn2.innerHTML = titreBtn2;
-
- //#### LE TEXTE DE LA QUESTION ####//
- var texteQuestion = texteQuestion;
- //On ajoute un élément de type span
- var newQuestion = document.createElement('span');
- //On affecte le style "sélectionné" au titre qui viens d'etre inséré
- newQuestion.setAttribute("class","question");
- //définition du style pour ie
- newQuestion.setAttribute("className","question");
- newQuestion.innerHTML = texteQuestion;
-
- //#### AJOUT D'UN DIV POUR SIMULER LA MODALITE DE LA BOITE ####//
- var newBoiteModal = document.createElement('div');
- //On affecte un attribut de type id, auquel on met l'attribut fixe : "boiteChoix"
- newBoiteModal.setAttribute("id","boiteModal");
- newBoiteModal.setAttribute("style","width:"+(screen.width-50)+"px;height:"+(screen.height-300)+"px;position:absolute;top:0px;left:0px;z-index:5000;background-color:#FFFF00;opacity:0;");
- //définition du style pour ie
- if (document.all) {
- newBoiteModal.style.setAttribute("cssText","width:"+(screen.width-50) +"px;height:"+(screen.height-250)+"px;position:absolute;top:0px;left:0px;z-index:5000;background-color:#FFFF00;filter: alpha(opacity=0)");
- alert(screen.width+" et "+screen.height)
- }
- //#### PARTIE CONCERNANT LA BOITE ####//
- //On ajoute un élément de type div
- var newBoite = document.createElement('div');
- //On affecte un attribut de type id, auquel on met l'attribut fixe : "boiteChoix"
- newBoite.setAttribute("id","boiteChoix");
- //On affecte le style "sélectionné" au titre qui viens d'etre inséré
- newBoite.setAttribute("class","boite");
- //définition du style pour ie
- newBoite.setAttribute("className","boite")
- //On créer la boite modal dans la page
- document.body.appendChild(newBoiteModal);
- //on créer la boite dans la page
- document.body.appendChild(newBoite);
- //monMenu.appendChild(newTitre);
- newBoite.appendChild(newTitre);
- newBoite.appendChild(newQuestion);
- newBoite.appendChild(newBtn);
- newBoite.appendChild(newBtn2);
- }
- function recupEtat(etat){
- var elementASupp = document.getElementById('boite');
- document.body.removeChild(elementASupp);
- elementASupp = document.getElementById('boiteModal');
- document.body.removeChild(elementASupp);
- return etat;
- }
- </script>
- </head>
-
- <body>
- <input type="button" value="Ajouter une boite" onclick="boiteChoix('test de titre','Accepter','Refuser','Texte pour la question');" />
- </body>
- </html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Boite de validation modale</title>
<style type="text/css">
.titreBoite{
display:block;
border-bottom:1px solid #ccc;
background-color:#FF0000;
}
.boite{
width:350px;
height:200px;
border:1px solid #ccc;
background-color:#999999;
position:absolute;
top:50%;
margin-top:-100px;
left:50%;
margin-left:-175px;
z-index:5001;
}
.btn1{
position:absolute;
left:10px;
top:150px;
}
.btn2{
position:absolute;
right:10px;
top:150px;
}
.question{
display:block;
width:90%;
margin-left:auto;
margin-right:auto;
margin-top:15px;
}
.boiteModal{
position:absolute;
left:0px;
top:0px;
width:100%;
height:100%;
background-color:#FFFF00;
z-index:5000;
}
</style>
<script type="text/javascript">
function boiteChoix(titre,titreBouton1,titreBouton2,texteQuestion){
//#### PARTIE CONCERNANT LE TITRE DE LA BOITE ####//
var titreBoite = titre;
//On ajoute un élément de type span
var newTitre = document.createElement('span');
//On affecte le style "sélectionné" au titre qui viens d'etre inséré
newTitre.setAttribute("class","titreBoite");
//définition du style pour ie
newTitre.setAttribute("className","titreBoite");
newTitre.innerHTML = titreBoite;
//#### AJOUT DES 2 BOUTONS AVEC LEUR LABEL ####//
var titreBtn1 = titreBouton1;
//On ajoute un élément de type span
var newBtn = document.createElement('button');
//On affecte le style "sélectionné" au titre qui viens d'etre inséré
newBtn.setAttribute("class","btn1");
//définition du style pour ie
newBtn.setAttribute("className","btn1");
newBtn.setAttribute("value",titreBtn1);
newBtn.setAttribute("onclick","recupEtat(true);");
//Définition de l'action pour ie
newBtn.onclick = function recupEtat(){var elementASupp = document.getElementById('boiteChoix');document.body.removeChild(elementASupp);elementASupp = document.getElementById('boiteModal');document.body.removeChild(elementASupp);return true;};
newBtn.innerHTML = titreBtn1;
//## bouton 2 ##//
var titreBtn2 = titreBouton2;
//On ajoute un élément de type span
var newBtn2 = document.createElement('button');
//On affecte le style "sélectionné" au titre qui viens d'etre inséré
newBtn2.setAttribute("class","btn2");
//définition du style pour ie
newBtn2.setAttribute("className","btn2");
newBtn2.setAttribute("value",titreBtn2);
newBtn2.setAttribute("onclick","recupEtat(false);");
//Définition de l'action pour ie
newBtn2.onclick = function recupEtat(){var elementASupp = document.getElementById('boiteChoix');document.body.removeChild(elementASupp);elementASupp = document.getElementById('boiteModal');document.body.removeChild(elementASupp);return false;};
newBtn2.innerHTML = titreBtn2;
//#### LE TEXTE DE LA QUESTION ####//
var texteQuestion = texteQuestion;
//On ajoute un élément de type span
var newQuestion = document.createElement('span');
//On affecte le style "sélectionné" au titre qui viens d'etre inséré
newQuestion.setAttribute("class","question");
//définition du style pour ie
newQuestion.setAttribute("className","question");
newQuestion.innerHTML = texteQuestion;
//#### AJOUT D'UN DIV POUR SIMULER LA MODALITE DE LA BOITE ####//
var newBoiteModal = document.createElement('div');
//On affecte un attribut de type id, auquel on met l'attribut fixe : "boiteChoix"
newBoiteModal.setAttribute("id","boiteModal");
newBoiteModal.setAttribute("style","width:"+(screen.width-50)+"px;height:"+(screen.height-300)+"px;position:absolute;top:0px;left:0px;z-index:5000;background-color:#FFFF00;opacity:0;");
//définition du style pour ie
if (document.all) {
newBoiteModal.style.setAttribute("cssText","width:"+(screen.width-50) +"px;height:"+(screen.height-250)+"px;position:absolute;top:0px;left:0px;z-index:5000;background-color:#FFFF00;filter: alpha(opacity=0)");
alert(screen.width+" et "+screen.height)
}
//#### PARTIE CONCERNANT LA BOITE ####//
//On ajoute un élément de type div
var newBoite = document.createElement('div');
//On affecte un attribut de type id, auquel on met l'attribut fixe : "boiteChoix"
newBoite.setAttribute("id","boiteChoix");
//On affecte le style "sélectionné" au titre qui viens d'etre inséré
newBoite.setAttribute("class","boite");
//définition du style pour ie
newBoite.setAttribute("className","boite")
//On créer la boite modal dans la page
document.body.appendChild(newBoiteModal);
//on créer la boite dans la page
document.body.appendChild(newBoite);
//monMenu.appendChild(newTitre);
newBoite.appendChild(newTitre);
newBoite.appendChild(newQuestion);
newBoite.appendChild(newBtn);
newBoite.appendChild(newBtn2);
}
function recupEtat(etat){
var elementASupp = document.getElementById('boite');
document.body.removeChild(elementASupp);
elementASupp = document.getElementById('boiteModal');
document.body.removeChild(elementASupp);
return etat;
}
</script>
</head>
<body>
<input type="button" value="Ajouter une boite" onclick="boiteChoix('test de titre','Accepter','Refuser','Texte pour la question');" />
</body>
</html>
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Validation automatique Boite confirm() [ par marsbidon ]
Bonjour, Je ne sais comment faire pour qu'une boite de dialogue de type confirm() soit validée automatiquement au bout d'un certain temps. Je veux lan
Probelem au niveau des DOM en ajax [ par palazar ]
Bonjour je developpe une pop up ajax qui apparait via un calendrierQd je souhaite ouvrir une nouvelle popup relative à une nouvelle date par dessus
Iniber le menu du nav sur click-droit [ par sebseb42 ]
Bonjour à tous,Ma question peut paraitre anodine comme ça, mais ce que j'ai besoin de faire, c'est d'iniber l'appartition du fameux menu contextuel da
Iframe et DOM [ par xordonez ]
Bonjour, je rencontre le problème suivant: La page de mon appli est un frameset composé de 3 frames: top, middle et bottom. Le corps de la page est
Savoir si on a appuyé sur la croix de la fenetre modale? [ par vinzemuls ]
Bonjour,Voilà j'aimerai savoir si l'utilisateur a appuyé sur un bouton ANNULER ou la croix de ma fenetre modalej'ai une page default.aspx ou jappel ma
dom [ par Yahaaaaaa ]
bjrs jaimerai avoir del'aide sur le dom(javascript) mon but et de prendre en selection un text ou une image et davoir son path ,je veu dir que jai le
Une boite flotante capricieuse [ par Nathbest ]
Bonjour à tous, alors voici mon problème:J'ai un système de boite flotante qui s'affiche à moitié caché sur la gauche, puis losque l'on passe la souri
Amélioration d'une boite flotante... [ par Nathbest ]
Bonjour à tous, alors voilà:J'ai un script qui me permet d'ouvrir une boite (qui se voit à moitié) lorsque je passe la souris deçu via la fonction h_o
DOM, id et position [ par Teclis01 ]
Bonzourrrrr Je fais une petite application pour un jeu en php/mysql/js/.... et j'ai besoin d'un petit coup de pouce pour le DOM <img sr
DOM [ par PROTECTIONNISTE ]
Salut,Ma source : var map=document.createElement("map");map.setAttribute("name","ctrlBox");mondiv.app
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Logiciels
PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|