2010-03-23 7 views
2

Je lis un fichier XML en utilisant javascript et puis je dois soumettre mon formulaire afin qu'il appelle une méthode particulière dans mon gestionnaire JSF. Habituellement, cela peut se faire sur un jsp lorsque l'utilisateur clique sur un bouton en ayant un ActionListener comme ceci:Javascript appelant JSF méthode de gestionnaire

<h:commandLink styleClass="button" action="#{myHandler.outcome}" actionListener="#{myHandler.doNext}"> 
    <span><h:outputText value="#{text.button_submit}" /></span> </h:commandLink> 

Je ne sais pas comment appeler une méthode comme « doNext » ci-dessus dans le gestionnaire de javascript. Je ne peux pas faire un simple:

document.form.submit(); 

comme il répète alors le traitement que j'ai déjà fait. Je veux lire les valeurs d'un fichier XML, puis appeler une méthode particulière dans le gestionnaire. Des idées très appréciées.

+0

J'ai résolu ce problème en plaçant un bouton caché sur le formulaire puis, dans mon javascript, j'ai simplement appelé button.click() qui a exécuté l'actionListener associé à ce bouton. J'ai donc simplement imité le bouton clic en javascript. – msharma

Répondre

2

J'ai trouvé une solution à cela. J'ai ajouté un bouton caché à mon jsp comme:

<p id="hiddenButton" style="display:none;" > 
      <h:commandLink id="hiddenRegButton" styleClass="button" action="#{myHandler.doNext}" /> 
     </p> 

et dans mon javascript je jQuery pour exécuter le clic qui mène t la méthode « doNext » dans mon gestionnaire pour s'exécuter.

jQuery('#hiddenRegButton').click(); 

C'était plus facile que je ne le pensais.

Questions connexes