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

JavaScript Discussion :

Empêcher la redirection avec confirm()


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Apprenti développeur Java EE
    Inscrit en
    Novembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti développeur Java EE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2016
    Messages : 2
    Par défaut Empêcher la redirection avec confirm()
    Bonjour,
    Je souhaite pouvoir annuler la redirection lors du clic d'un lien par une pop-up confirm(). Je suis aller voir la discussion suivante :
    http://www.developpez.net/forums/d15...ction-confirm/
    Tout comme saninx, je dispose de différents boutons "supprimer". J'ai suivi les premiers conseils de micetf jusqu'au traitement du problème dans annulchq.js.

    La pop-up s'affiche bien, mais lorsque je souhaite annuler, la redirection s'effectue quand même.

    Je code en JEE, avec JSP et JSTL mais le problème vient du Javascript. Voici mon code :


    Code html : 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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    	<title>Accès restreint</title>
    	<link type="text/css" rel="stylesheet" href="<c:url value="/inc/form.css"/>" />
    	<script type="text/javascript" src="inc/script.js"></script>
     
    </head>
    <body>
    	<h1>Bonjour ${sessionScope.sessionUtilisateur.userName}, et bienvenue dans l accès restreint.</h1>
     
    	<table>
    		<tr><th>Identifiant</th> <th>Nom</th> <th>Mot de passe</th></tr>
    		<c:forEach items="${utilisateurs}" var="utilisateur">
    			<tr><td>${utilisateur.id}</td><td>${utilisateur.userName}</td><td>${utilisateur.userPassword}</td>
    				<td class="action">
                            <a href="<c:url value="/accesRestreint/suppression2">
                                                            <c:param name="id" value="${ utilisateur.id }" />
                                                            <c:param name="classe" value="${ utilisateur.getClass() }"/>
                                            </c:url>"
                            	class="btnSuppr">
                                <img src="<c:url value="/inc/supprimer.png"/>" id="suppr" alt="Supprimer" />
                            </a>
     
                	</td>
                </tr>
    		</c:forEach>
    	</table>
    	<script>
                    var links = document.getElementsByClassName('btnSuppr');
                    for (var i = 0; i < links.length; i += 1) {
                            links[i].addEventListener('click', function(e){
                                if (window.confirm("Valider annulation !")){
                                    e.preventDefault();
                                }
                            });
                    }
            </script>
     
    </body>
    </html>


    Sinon voici un aspect de la page coté client :

    Code html : 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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    <html>
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    	<title>Accès restreint</title>
    	<link type="text/css" rel="stylesheet" href="/pro_jpa_gf3.1/inc/form.css" />
    	<script type="text/javascript" src="inc/script.js"></script>
     
    </head>
    <body>
    	<h1>Bonjour HIPPO, et bienvenue dans l accès restreint.</h1>
     
    	<table>
    		<tr><th>Identifiant</th> <th>Nom</th> <th>Mot de passe</th></tr>
     
    			<tr><td>1</td><td>ASSISTANTE</td><td>azerty</td>
    				<td class="action">
                                           <a href="/pro_jpa_gf3.1/accesRestreint/suppression2?id=1&classe=class+beans.EpUser"
                            	            class="btnSuppr">
                                                <img src="/pro_jpa_gf3.1/inc/supprimer.png" id="suppr" alt="Supprimer" />
                                           </a>
     
                	                </td>
                           </tr>
     
    		       <tr><td>2</td><td>HIPPO</td><td>chocolat</td>
    				<td class="action">
                                           <a href="/pro_jpa_gf3.1/accesRestreint/suppression2?id=2&classe=class+beans.EpUser"
                            	            class="btnSuppr">
                                                <img src="/pro_jpa_gf3.1/inc/supprimer.png" id="suppr" alt="Supprimer" />
                                           </a>
     
                	             </td>
                          </tr>
            </table>
    	<script>
                    var links = document.getElementsByClassName('btnSuppr');
                    alert('hello hello !');
                    for (var i = 0; i < links.length; i += 1) {
                            links[i].addEventListener('click', function(e){
                                if (window.confirm("Valider annulation !")){
                                    e.preventDefault();
                                }
                            });
                    }
            </script>
     
    </body>
    </html>

    Merci de votre aide !

  2. #2
    Candidat au Club
    Homme Profil pro
    Apprenti développeur Java EE
    Inscrit en
    Novembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti développeur Java EE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2016
    Messages : 2
    Par défaut
    pff je suis trop con mon post ne sert à rien : j'ai oublié un "!" ligne 38, ce n'est pas "if (window.confirm("Valider annulation !"))" mais if (!window.confirm("Valider annulation !")). Voila.

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

Discussions similaires

  1. Impossible d'empêcher la redirection avec confirm()
    Par saninx dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 19/02/2016, 19h18
  2. Réponses: 5
    Dernier message: 11/02/2012, 13h05
  3. redirection avec boite confirm();
    Par maysa dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/05/2007, 12h12
  4. Problème de redirection avec window.location
    Par Kosti dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 30/11/2004, 18h31
  5. Response.redirect() avec ancre nomée
    Par roots_man dans le forum ASP
    Réponses: 4
    Dernier message: 23/11/2004, 10h37

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