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

Zend Framework PHP Discussion :

[ZF1.9.2] désactivation bouton après clic


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Par défaut [ZF1.9.2] désactivation bouton après clic
    Bonjour,
    Voilà je rencontre un problème avec les personnes "impatientes" avec le mon formulaire. Lors de la validation du formulaire (donc clic sur bouton), un traitement est lancé et met queqlues secondes à répondre et donc rediriger vers la bonne page.

    J'aimerais trouver une parade :
    - soit désactiver le bouton après le clic
    - soirt afficher un popup qui empêcherait le clic, et cette popu se fermerait après le retour du traitement.

    Quelle est la meilleure solution ? et comment la mettre en place ?

    D'avance merci.
    Vince

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 314
    Par défaut
    Bonjour,
    à mon avis en javascript tu peux bien solutionner ton soucis. je ne vois de relation avec Zend Framework

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Par défaut
    si mon formulaire était créé en HTML directement, effectivement que j'aurai fait un bout de javascript pour le désactiver.
    mon problème est que le bouton est un element Zend, donc comment l'intercepter en javascript ?
    merci.

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 314
    Par défaut
    Bonjour ,
    (si j'ai bien compris)
    lors de la création du formulaire via Zend_Form , tu peux lier (par exemple ) une fonction javascript à l'événement clic du bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    		$envoyer = new Zend_Form_Element_Button('envoyer');
    		$envoyer->setAttribs(array('onclick'=>'sendMessage()'));
    puis dans un fichier javascript ( dans le répertoire public/js/functions.js par exemple ) tu définis la fonction sendMessage() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function sendMessage()
    {
      //Traitement ....... 
    }
    dernière étape , est de récupérer la le fichier javascript functions.js ( dans Layout ( si tu utilises )ou dans une vue ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php echo $this->headScript()->prependFile('/js/functions.js')?>
    donc ( si j'ai bien compris ton soucis ) c'est la solution . dans la fonction sendMessage() tu peux gérer comme tu veux : désactiver le boutton ou autre .....

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Par défaut
    salut,
    finalement, j'ai trouvé une solution, enfin presque :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $form->addElement('submit', 'submit', array(
                'label' => 'Payer',
                'attribs' => array('onclick' => 'this.disabled=true;return true')))
    je dis presque car pour la version locale de mon appli, ça fonctionne, mais pas sur ma version serveur ...

    je ne comprends pas pourquoi j'ai une différence de traitement
    merci

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Par défaut
    j'ai un début de solution, il me manquait un ';' après le 'return true'.
    ce qui est bizarre, c'est ce code marche sur un formulaire, mais pas l'autre ...

Discussions similaires

  1. [2010] Désactivations messages apres clic sur lien hypertexte vers fichier interne
    Par wrdaniel dans le forum Microsoft Office
    Réponses: 1
    Dernier message: 27/07/2012, 13h22
  2. [C#] Bloquer un bouton après clic dessus.
    Par maldufleur dans le forum ASP.NET
    Réponses: 3
    Dernier message: 12/11/2010, 23h30
  3. [AC-2007] Masquer un bouton aprés clic dessus
    Par lio33 dans le forum IHM
    Réponses: 3
    Dernier message: 06/10/2010, 15h29
  4. Supprimer un bouton après "clic"
    Par alex777771 dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 19/05/2010, 18h04
  5. Faire disparaitre un bouton apres clic
    Par chris.lechat dans le forum Flash
    Réponses: 4
    Dernier message: 28/03/2007, 20h27

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