j'utilise LookupDispatchAction, et dans mon formulaire j'ai une balise <html:select>, j'aimerai lancer une méthode de ma classe action en séléctionnant une valeur de la balise <html:select>. Quelqu'un a une petite idée.
Merci
j'utilise LookupDispatchAction, et dans mon formulaire j'ai une balise <html:select>, j'aimerai lancer une méthode de ma classe action en séléctionnant une valeur de la balise <html:select>. Quelqu'un a une petite idée.
Merci
Tu peux soumettre le formulaire via l'attribut onchange du tag html:select en spécifiant au préalable le path de l'Action à exécuter avec en paramètre le libellé de la clé correspondant à la méthode à exécuter.
Tu peux donc d'abord stocker le libellé de la clé correspondant à la méthode à exécuter dans une variable via le tag bean:define par exemple comme ceci :
et ensuite passer cette variable en paramètre de l'Action et soumettre le formulaire comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <bean:define id="libActionSelect"> <bean:message key="select"/> </bean:define>
Dans ce code, il faut que tu remplaces parm par le nom du paramètre que tu as codé dans l'attribut parameter dans le mapping de l'Action.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <html:select property="itemSelected" onchange="document.nomDuFormBean.action='pathDeTonAction.do?parm=${libActionSelect}';document.nomDuFormBean.submit();">
Petite précision : l'EL ${libActionSelect} dans le tag html:select ne fonctionnera que si tu es en J2EE 1.4 ou plus.
Si tu es en J2EE 1.3, il faut utiliser le tag html-el:select et donc la tld struts-html-el.tld.
Merci pour ta réponse, je vais tester ça tout de suite
Partager