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 :

2 evenements onClick


Sujet :

JavaScript

  1. #1
    Membre confirmé Avatar de piogo113
    Inscrit en
    Juin 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2006
    Messages : 230
    Par défaut 2 evenements onClick
    bonjour tout le monde

    est il possible de mettre 2 evenements onClick dans le meme bouton?
    voila les 2 evenements que je veux mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <onClick="window.print()" onClick="confirmation();">

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="window.print();confirmation();"


    A+

  3. #3
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Ou plus propre/maintenable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function doSomeStuffs() {
    window.print();
    confirmation();
    }

  4. #4
    Membre confirmé Avatar de piogo113
    Inscrit en
    Juin 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2006
    Messages : 230
    Par défaut
    ca marche mais le probleme c'est que la fenetre de la confiramtion et la fenetre d'impression se lancent tout les 2 en meme temps.

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par Shinuza
    Ou plus propre/maintenable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function doSomeStuffs() {
    window.print();
    confirmation();
    }
    Mouais !
    Mon but essentiel était d'indiquer la manière d'enchainer 2 instructions dans l'évènement (sans essayer de doubler l'évènement).
    Après, avoir une fonction par évènement dans la page, c'est un choix, mais je ne trouve pas que ça soit plus "propre / maintenable" (et suivant les page )


  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par piogo113
    ca marche mais le probleme c'est que la fenetre de la confiramtion et la fenetre d'impression se lancent tout les 2 en meme temps.
    Alors il faut préciser l'enchainement que tu souhaites ...

  7. #7
    Membre expérimenté
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Par défaut
    Tu veux dire que tu veux d'abort faire une fenetre d'impression et pis apres une fenetre de confirmation?
    Dans ce cas je te conseille comme ce qui a été dis avant !
    sinon si ça fait toujours apparaitre les deux fenetres en mm temps, tu peux peut etre mettre un truc genre sleep(5) ou wait (2) ou un truc du genre ! c'est du bidouillage mais bon je ne comprends pas trop ton prob!

  8. #8
    Membre confirmé Avatar de piogo113
    Inscrit en
    Juin 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2006
    Messages : 230
    Par défaut
    je veux que la fenetre de confirmation sert à quelque chose, c a d quand je clique sur le bouton ok, la fenetre d'impression s'ouvre.

  9. #9
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par chaminette
    tu peux peut etre mettre un truc genre sleep(5) ou wait (2) ou un truc du genre ! c'est du bidouillage mais bon je ne comprends pas trop ton prob!
    Heu ... c'est surtout que ça existe pas.
    Tu veux parler de timer ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="window.print();setTimeout('confirmation()', 5000);"
    5000 en ms ...

    A+

  10. #10
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par piogo113
    je veux que la fenetre de confirmation sert à quelque chose, c a d quand je clique sur le bouton ok, la fenetre d'impression s'ouvre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="if (confirmation()) window.print();"

  11. #11
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Précision (au cas où ...) :
    ta fonction confirmation() doit renvoyer true ou false ...

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    une fonction intermédiare de confirmation ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function doSomeStuffs() { confirmation()?window.print():0; }
    et ta fonction confirmation retourne true ou false ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  13. #13
    Membre confirmé Avatar de piogo113
    Inscrit en
    Juin 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2006
    Messages : 230
    Par défaut
    c'est bon le probleme est resolu

    merci à tous

  14. #14
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Citation Envoyé par E.Bzz
    Mouais !
    Mon but essentiel était d'indiquer la manière d'enchainer 2 instructions dans l'évènement (sans essayer de doubler l'évènement).
    Après, avoir une fonction par évènement dans la page, c'est un choix, mais je ne trouve pas que ça soit plus "propre / maintenable" (et suivant les page )

    Si demain il veut rajouter n fonction() sur le onclick, il n'a qu'a modifier la fonction dosomeStuffs(), et non pas tous les onclicks

    Accesoirement si la fonction confirmation est un window.confirm, comme indiqué par SpaceFrog (sauf que sa syntaxe ne fonctionnera pas), le plus simple est de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function doSomeStuffs() {
    var result =  window.confirm("Souhaitez vous imprimer la page?");
    (result ==true) ? window.print() : function() {return false};
    }

  15. #15
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    oui enfin plus simplement j'ai corrigé ...

    0 à la place de return false ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  16. #16
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par Shinuza
    Si demain il veut rajouter n fonction() sur le onclick, il n'a qu'a modifier la fonction dosomeStuffs(), et non pas tous les onclicks
    Sûr qu'elle est appelée des dizaines de fois par page !

    ... mais compliquer les choses simples est un art

  17. #17
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Citation Envoyé par E.Bzz
    Sûr qu'elle est appelée des dizaines de fois par page !

    ... mais compliquer les choses simples est un art
    Oula, je la refais, t'as pas l'air d'imprimer justement.

    C'est juste une bonne habitude à prendre, que ça soit pour imprimer une page ou faire dix autres actions

    Surtout que la fonction en question ne nécessite même pas l'appel de deux fonctions, donc la question ne se pose même pas en l'occurence

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

Discussions similaires

  1. Evenement "onclick" inactif lors du chargement de
    Par Bouillou dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/03/2006, 23h07
  2. evenement onclick ne fonctionne pas avec explorer??
    Par nath-0-0 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 15/03/2006, 12h13
  3. Bouton alternant 2 fonctions sur le meme evenement onClick
    Par Rocca dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 31/01/2006, 09h16
  4. Evenement OnClick qui ne fonctionne pas sous firefox
    Par frechy dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 27/12/2005, 16h06
  5. Réponses: 6
    Dernier message: 23/12/2005, 13h51

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