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 :

Demander confirmation de suppression sur un bouton


Sujet :

JavaScript

  1. #1
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2014
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 114
    Par défaut Demander confirmation de suppression sur un bouton
    Bonjour à tous,

    Voilà actuellement j'ai un href me permettant de supprimer un formulaire lorsque je clique dessus. Problème, je veux que le système me demande de confirmer (ou non) la suppression avant de le faire. J'ai donc bien entendu pensé à la fonction Onclick = "return (confirm('Etes-vous sûr de vouloir supprimer ?'));" mais, j'ai déjà un Onclick dans mon href.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" class="button delete" onclick="javascript:removeOldDocument(<s:property value="id"/>);"><s:text name="common.delete"/></a>

    Comment feriez-vous pour rajouter une condition de confirmation à cette action ?



    Autre question, ailleurs dans mon appli, j'ai ce code pour un autre bouton supprimer :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <s:a href="%{url_familyDelete}" cssClass="button delete" onclick="javascript:return doConfirmDelete('%{login}');"><s:text name="common.delete"/></s:a>

    Cela supprime bien l'objet voulu, mais sans demander de confirmation ... Une idée ?!

    Merci d'avance !

  2. #2
    Membre confirmé
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Juin 2013
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 277
    Par défaut
    Ahh le code dégueu Non plus sérieusement il est un petit peu obsolète. Pour ton premier problème procède comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" class="button delete" id="unId"><s:text name="common.delete"/></a>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    var button = document.querySelector("#unId");
    button.addEventListener("click", function(e) {
        // Première action
    });
     
    button.addEventListener("click", function(e) {
        // deuxième action
    }),
    Evite de mettre javascript: dans un lien c'est désormais très peu élégant

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2014
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 114
    Par défaut
    Ouais je sais, mais ce n'est pas mon code. On m'a affecté à cette application et le dernier dév' avait cette manière de coder ...

    Dans l'exemple que tu me proposes tu enlèves le "s: property" de mon id, ça ne va rien changer ?
    Ensuite je ne vois pas où placer le reste du code. Dans la balise <a> ?

    Faut que je remplace ainsi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    var button = document.querySelector("id");
    button.addEventListener("click", function(e) {
        javascript:removeOldDocument("id")
    });
     
    button.addEventListener("click", function(e) {
        // ? (fermeture de la page de confirmation ?)
    }),
    EDIT:

    En attendant une réponse j'ai continué à chercher une solution.

    J'ai créé une fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    //Delete confirm
    function confirm_suppression()
    {
    	return confirm('Are you sure to delete this ?');
    }
    Et j'ai donc modifié ensuite comme-ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" class="button delete" onclick="if(confirm_suppression()) javascript:removeOldDocument(<s:property value="id"/>);"><s:text name="common.delete"/></a>
    La syntaxe est-elle correcte ?

  4. #4
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    le s: est un namespace tout dépends de comment est codé ta page html
    et par quoi elle est interprété. donc la dessus impossible de te répondre.

    ensuite vire partout dans tout ton code les javascript: des méthodes js de tes élément c'est inutile

    enfin ta fonction ne sert à rien.
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a href="#" class="button delete" 
     onclick="if(confirm('Are you sure to delete this ?')) removeOldDocument('<s:property value=\"id\"/>');"
    ><s:text name="common.delete"/></a>

    j'ai comme l'impression que le code que tun nous as afficher n'est pas le code html du navigateur
    mais celui n'une appli java qui génère du html.
    ce qui doit être posté ici pour éviter toute erreur ou confusion est le code que tu vois dans ton navigateur lorsque tu fais afficher la source

    le code que tu mets sur ton serveur n'a rien à faire ici.
    du coup je ne sais pas comment doit être écrit le <s:property value="id"/>. pour être conforme à html j'ai mis des \ mais si c'est interprété par java je ne sais pas ce qu'il te faut mettre.
    A+JYT

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/04/2007, 18h25
  2. demande d'aide sur les bouton
    Par naruto01 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 29/01/2007, 18h20
  3. demande de Confirmation de suppression
    Par lodan dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 07/01/2007, 21h52
  4. [vb6] Demande de confirmation en cliquant sur la croix
    Par Christophe P. dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 11/07/2006, 11h08
  5. Réponses: 6
    Dernier message: 09/07/2004, 15h07

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