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

Struts 1 Java Discussion :

Transfert d'une page à une popup


Sujet :

Struts 1 Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 19
    Points
    19
    Par défaut Transfert d'une page à une popup
    Bonjour,

    Je travaille sur une application web et j utilise struts. J'ai des problemes pour faire passer une information d'une fenetre principale a un popup qui s'ouvre quand je clic sur un lien de la fenetre principale.
    La fenetre principale represente un ecran des details d'un produit. Sur la fenetre principale quand je clic sur le lien "Indications" cela declanche une fonction javascript qui ouvre un popup devant m'afficher la liste des indications du produit. Mais je n arrive pas a tranferer la propriete representant la reference du produit au popup (j'en ai besoin pour faire ma requete a la base de donnée). J'ai regardé dans la faq et je voulais utiliser le tag html:link mais je ne peux pas à cause de la fonction javascript qui m ouvre le popup.

    Pour l'instant je fais comme suit mais cela ne me permet pas d'avoir la reference du produit quand j'ouvre le popup



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="javascript:indications);"> Indications </a>
    et ma fonction indication est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function indications() {
    indicationWindow=open('IndicationManagement.do','','resizable=yes, location=no, width=500, height=500, menubar=no, status=no, menubar=no');
    if (indicationWindow.opener == null) indicationWindow.opener = self;
    }
    Si quelqu'un a une solution a mon probleme ca m'aiderai beaucoup.
    Merci d'avance

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Je n'ai pas testé mais as-tu essayé le code suivant ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href='javascript:indications(<bean:write name="xxx" property="yyy"/>);'> Indications </a>

  3. #3
    Membre régulier

    Inscrit en
    Janvier 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 7
    Points : 85
    Points
    85
    Par défaut
    Est ce qu'il ya une action supplementaire sur ton pop up exp : click sur un bouton pour faire ta requete à la BD ou le pop up s'affiche directement avec le resultat de la requete?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 19
    Points
    19
    Par défaut
    en utilisant le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href='javascript:indications(<bean:write name="ProduitForm" property="produit.reference"/>);'> Indications </a>
    Dans quelle variable est placée ma reference? Comment je peux l'utiliser?

    Le popup s'affiche directement avec le resultat de la recherche

  5. #5
    Membre régulier

    Inscrit en
    Janvier 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 7
    Points : 85
    Points
    85
    Par défaut
    A mon avis, si le pop up s'affiche directement avec le resultat c'est que
    le pop up n'a pas besoin de la reference de ton produit car c'est le servelet qui fera la requete et le pop up ne fais que l'afficher je m'explique

    1- Dans la page principale tu fait un lien classique avec ta reference comme parametre ex:

    <a href="produit.do?ma_referenceId=<%= referenceId%>&command=metodeQui_FaitLa_requete&forwardTo=page_principale">
    (en prenant soin de declarer ma_referenceId dans ton frmulaire struts )

    2-Après ta requete dans ton servelet tu met le resutat (un bean, un tableau, un arrayList.... peu importe) dans la session et retoour à la page principale.

    3-Toujour dans la page principale tu fais un truc du genre :

    <logic:notEmpty name="monResultat_la_session">
    Mon javaScript qui appel mon pop up
    </logic:notEmpty>

    4- Dans la page du pop up je reccupère le resultat dans la session et je l'affiche.



    C'est une approche parmis tant d'autres si tu veux plus de details technique n'hésite pas m'envoyer ton code.

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Bien sûr, il te faut adapter la fonction Javascript du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function indications(paramAjouter) {
      var monUrl = 'IndicationManagement.do';
      // Ajout de la partie fixe du paramètre (reference étant le nom du paramètre)
      monUrl+='?reference=';
      // Ajout de la partie variable du paramètre (valeur)
      monUrl+=paramAjouter;
      // Ton code habituel
      indicationWindow=open([b]monUrl[/b],'','resizable=yes, location=no, width=500, height=500, menubar=no, status=no, menubar=no');
      if (indicationWindow.opener == null) indicationWindow.opener = self;
    }

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 19
    Points
    19
    Par défaut
    Merci de vos reponses. L'action de recherche doit se faire depuis le popup et l'info a transmettre est la valeur de l'un des attributs de la classe Produit (en l'occurence le code). Ce week j'ai trouvé une méthode :

    Dans mon bean qui represente mon formulaire de la fenetre principale j'ai un attribut representant le code produit a passer au popup. Dans le formulaire principal je le mets en hidden :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:hidden property="codeProduit" />
    Maitenant du coté popup : dans le bean qui represente le formulaire de recherche du popup je met un attribut qui represente le code produit. Dans la page jsp du popup je mets en hidden un champs le representant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:hidden property="codeProduitDuPopup" />
    Toujours dans la fenetre du popup je declare la fonction javascript suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function getreference() {
    document.SearchIndicationsRefForm.codeProduitDuPopup.value=top.opener.window.document.ProduitForm.codeProduit.value
    }
    Cette fonction me permet de recuperer la valeur du champ code produit du formulaire de depart "ProduitForm" et de la mettre dans mon formulaire d'arrivé (cad le popup) "SearchIndicationsRefForm". Ensuite dans la page jsp du popup je fait appel a la fonction javascript juste apres la definition du champ "hidden" et c'est gagné!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <SCRIPT LANGUAGE="javascript">
    getreference();
    </SCRIPT>
    Merci encore pour vos reponses

  8. #8
    Membre régulier

    Inscrit en
    Janvier 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 7
    Points : 85
    Points
    85
    Par défaut
    C'est pas mal comme process

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

Discussions similaires

  1. [Débutant] pour affecter une page à une Page Master
    Par zerkos dans le forum VB.NET
    Réponses: 0
    Dernier message: 06/07/2012, 10h45
  2. [HTML] Transfert d'un champ texte d'une page à une autre
    Par zaiim dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 04/03/2008, 17h47
  3. Vérifier l'ouverture d'une page en popup
    Par NicoNGRI dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/08/2006, 15h49
  4. Réponses: 2
    Dernier message: 09/02/2006, 19h06
  5. Empecher l'affichage d'une page hors popup
    Par cyber6ou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/10/2005, 18h49

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