Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1461 connectés 

  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  inclure un modal dans un script JS

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

inclure un modal dans un script JS

n°2422899
wisefun77
Vivre ses rêves
Posté le 27-07-2022 à 15:59:38  profilanswer
 

Bonjour,  
 
Je viens de découvrir comment faire un modal.
Mais lorsque je clique sur le bouton rien ne se passe.
voici le code html basique qui fonctionne.

Code :
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.    <meta charset="UTF-8">
  5.    <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.    <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7.    <title>Modal text</title>
  8.    <link rel="stylesheet" href="CSS/Sstyle.css">
  9.    <link rel="stylesheet" href="Css/style.css">
  10.    <link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet">
  11.    <script src="Js/apps.js"></script>
  12. </head>
  13. <body>
  14.    <button id="myBtn">Ouvrir le Modal</button>
  15.    <div id="myModal" class="modal">
  16.        <div class="modal-content">
  17.            <span class="close">&times;</span>
  18.            <br>
  19.            La chaine des Balises a été copié <br><br> Il suffit de la coller dans le "<b><u>Le champs Work Notes</u></b>" de ServiceNow.
  20.           </div>
  21.    </div>


Je voudrais l'inclure dans ce script JS dans la partie TRY

Code :
  1. <form id="form-copier" >
  2.        <!-- champ de saisie de texte -->
  3.        <textarea class="js-text" id="texte"  cols="80" rows="5"disabled="disabled"><?php echo $_SESSION["BalisesGeneral"]?></textarea>
  4.         <br><br>
  5.        <!-- Bouton copier -->
  6.        <input type="button" class="js-copytextbtn" value="Copier les balises">
  7.        
  8.    </form>
  9.        <script>
  10.            (() => {
  11.                const button = document.querySelector('.js-copytextbtn');
  12.  
  13.                button.addEventListener('click', () => {
  14.                    const text = document.querySelector('.js-text');
  15.                    const range = document.createRange();
  16.  
  17.                    range.selectNode(text);
  18.                    window.getSelection().addRange(range);
  19.  
  20.                    try {
  21.                         //     var alerte="Champs Work Notes* "
  22.                        //  alert('La chaine des Balises a été copié ! \n\r Il suffit de la coller dans le ' + alerte + 'de ServiceNow.');  
  23.                        document.location.replace('pagefin.php');
  24.                      
  25.                    } catch (err) {
  26.                        alert('Pas possible de copier.');
  27.                    }
  28.                    
  29.                    window.getSelection().removeAllRanges();
  30.                });
  31.            })();
  32.        </script


j'ai essayé mais cela ne fonctionne pas.

Code :
  1. <form id="form-copier">
  2.                <!-- champ de saisie de texte -->
  3.                <textarea class="js-text" id="texte" cols="80" rows="5" disabled="disabled"><?php echo $_SESSION["BalisesGeneral"] ?></textarea>
  4.                <br><br>
  5.                <!-- Bouton copier -->
  6.                <input type="button" class="js-copytextbtn" class="modal-btn modal-trigger" value="Copier les balises">
  7.  
  8.            </form>
  9.            <script>
  10.                (() => {
  11.                        const button = document.querySelector('.js-copytextbtn');
  12.  
  13.                        button.addEventListener('click', () => {
  14.                                    const text = document.querySelector('.js-text');
  15.                                    const range = document.createRange();
  16.  
  17.                                    range.selectNode(text);
  18.                                    window.getSelection().addRange(range);
  19.  
  20.                                    try {
  21.            </script>
  22.            <div class="modal-container">
  23.                <div class="overlay modal-trigger"></div>
  24.  
  25.                <div class="modal" role="dialog" aria-labelledby="modalTitle" aria-describedby="dialogDesc">
  26.                    <button aria-label="close modal" class="close-modal modal-trigger">X</button>
  27.                    <h1 id="modalTitle">La chaine des Balises a été copié.</h1>
  28.                    <p id="dialogDesc">Il suffit de la coller dans le "<b><u>Le champs Work Notes</u></b>" de ServiceNow.</p>
  29.                </div>
  30.  
  31.            </div>
  32. <script src="Js/apps.js"></script>
  33.            <script>
  34.                } catch (err) {
  35.                    alert('Pas possible de copier.');
  36.                }
  37.  
  38.                window.getSelection().removeAllRanges();
  39.                });
  40.                })();
  41.            </script>


 
Merci


---------------
De retour au PHP après plus de 12 ans d'absence pour retrouver un emploi.
mood
Publicité
Posté le 27-07-2022 à 15:59:38  profilanswer
 

n°2422911
MaybeEijOr​Not
but someone at least
Posté le 27-07-2022 à 21:17:53  profilanswer
 

Le modal existe dans le HTML dans tous les cas, c'est son affichage/activation qui se fait via un appel du JS (à travers un évènement).
Pour modifier le DOM en JS il faut utiliser des méthodes spécifiques, tu ne peux pas juste écrire du HTML puisque le document a déjà été interprété par le navigateur.


---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
n°2422915
mechkurt
Posté le 27-07-2022 à 22:29:26  profilanswer
 

C'est très bien de vivre ses rêves mais à un moment donné la programmation quitte le champs de la poésie pour atteindre celui de la rigueur...
 
Pour le moment un ordinateur exécutant du code n'a pas encore l’intelligence suffisante pour comprendre ce que tu veux faire, c'est a toi de te plier à ses capacités.
Du coups je te conseilles de suivre des tutoriels (chacun ses préférences : vidéo youtube, cours en ligne, ou carrément exemple concret et documentation du langage) pour comprendre un minimum ce que tu fait.
Moi j'ai faillis lâcher l'affaire ligne 9-10

Code :
  1. <link rel="stylesheet" href="CSS/Sstyle.css">
  2. <link rel="stylesheet" href="Css/style.css">


Puis je me suis dit c'est pas si grave, faut bien apprendre, et là ligne 9-41 de ton 3eme bloc de code, consternation:

Code :
  1. <script>
  2.                 (() => {
  3.                         const button = document.querySelector('.js-copytextbtn');
  4.                         button.addEventListener('click', () => {
  5.                                     const text = document.querySelector('.js-text');
  6.                                     const range = document.createRange();
  7.                                     range.selectNode(text);
  8.                                     window.getSelection().addRange(range);
  9.                                     try {
  10.             </script>
  11.             <div class="modal-container">
  12.                 <div class="overlay modal-trigger"></div>
  13.                 <div class="modal" role="dialog" aria-labelledby="modalTitle" aria-describedby="dialogDesc">
  14.                     <button aria-label="close modal" class="close-modal modal-trigger">X</button>
  15.                     <h1 id="modalTitle">La chaine des Balises a été copié.</h1>
  16.                     <p id="dialogDesc">Il suffit de la coller dans le "<b><u>Le champs Work Notes</u></b>" de ServiceNow.</p>
  17.                 </div>
  18.             </div>
  19. <script src="Js/apps.js"></script>
  20.             <script>
  21.                 } catch (err) {
  22.                     alert('Pas possible de copier.');
  23.                 }
  24.                 window.getSelection().removeAllRanges();
  25.                 });
  26.                 })();
  27.             </script>


Je ne saurais pas ou commencer mais clairement il y'a des lacunes, je t'incite à ne pas mettre la charrue avant les bœufs et à apprendre à ton rythme mais en commençant par la base pacque là, ça ne risque pas de marcher !
 
Y'a pas de soucis on peut aider sur ce forum mais là (et sans vouloir te décourager), y'a trop à dire pour que ça en vaille la peine... :o


Message édité par mechkurt le 28-07-2022 à 06:01:40

---------------
D3
n°2422929
wisefun77
Vivre ses rêves
Posté le 28-07-2022 à 09:22:39  profilanswer
 

Bonjour mechkurt MaybeEijOrNot,
 
Merci pour votre aide.  
Je vais suivre vos conseils.
Merci.


---------------
De retour au PHP après plus de 12 ans d'absence pour retrouver un emploi.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  inclure un modal dans un script JS

 

Sujets relatifs
Script bash/python extraire données bddTransformer script Powershell en batch
[Powershell] [RESOLU] Script pour mettre à jour Firefox[PowerShell] Script SFTP avec authentification par clé de f
Création d'un .bat ou script PowerShell pour partage de dossiers.Script CSV en JSON
Divers - problème de formulaire HTML / CSS / JSExclure script du preloader
Inclure une page suivant un formulaireUtilisation de script VBS avec récupération de l'utilisateur courant p
Plus de sujets relatifs à : inclure un modal dans un script JS


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR