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

JSF Java Discussion :

Débutant : demander l'éxécution d'une méthode d'un bean sans passer par un bouton


Sujet :

JSF Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Chargé d’études
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d’études

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Points : 32
    Points
    32
    Par défaut Débutant : demander l'éxécution d'une méthode d'un bean sans passer par un bouton
    Bonjour,
    J'ai parfois besoin d'appeler l'éxécution d'une méthode sur un bean sans nécessairement passer par un click sur un bouton, y a t-il une façon de faire ou est-ce toujours lié à une action utilisateur ?

    Merci de vos réponses.

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    hello,

    tu peux mettre un onchange sur un composant et simuler un appel à un lien en passant par une fonction Javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <h:commandLink id="lnkSelect" onmouseover="clickLink('hiddenLink');">
    <h:graphicImage id="imgSelect" value="/images/arrow-previous.gif" alt="#{text.common_detail}" style="border-style:none"/>
    </h:commandLink>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    	    function clickLink(linkId) {
    		  var fireOnThis = document.getElementById(linkId);
    		  if (document.createEvent) {
    		    var evObj = document.createEvent('MouseEvents');
    		    evObj.initEvent( 'click', true, false );
    		    fireOnThis.dispatchEvent(evObj);
    		   } else if (document.createEventObject){
    			    fireOnThis.fireEvent('onclick');
    			  }
    		}
    et dans ta page JSF tu rajoutes un lien "hidden"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	<t:commandLink id="hiddenLink" forceId="true" style="display:none; visibility: hidden;" action="#{dealerGui.clearSession}">
    		<!-- parameters, more action listeners, etc. -->
    	</t:commandLink>

  3. #3
    Nouveau membre du Club
    Profil pro
    Chargé d’études
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d’études

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Points : 32
    Points
    32
    Par défaut Merci beaucoup !
    Merci pour ce code de haute volée.

    Laurent

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336

Discussions similaires

  1. Faire une Union de deux tables sans passer par UNION
    Par allouchi dans le forum Langage SQL
    Réponses: 4
    Dernier message: 16/06/2011, 10h19
  2. Réponses: 4
    Dernier message: 01/04/2009, 14h16
  3. Réponses: 7
    Dernier message: 15/02/2009, 23h01
  4. Modifier une valeur dans un fichier sans passer par l'éditeur
    Par elkhy dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 09/06/2006, 00h15

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