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

Taglibs Java Discussion :

Créer un lien dynamique avec javascript [DisplayTag]


Sujet :

Taglibs Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut Créer un lien dynamique avec javascript
    Bonjour

    Je tente de créer un lien dynamique avec Display tag, utilisant du javascript.
    Tout d'abord est-ce possible d'y insérer du javascript ? Sachant que je voudrais un lien du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <a href="#" 
    onclick="javascript:window.open('
    monAction.do
    ?id=<bean:write name="monBean" property="id" scope="session" />
    &type=<bean:write name="monBean" property="type" />
    &vue=<%=vue%>',
    '_blank','width=600,height=600,menubar=no,scrollbars=yes,status=no');">
    Ci-dessous le code tel qu'il est proposé par sourceforge et que j'essaie d'implémenter, je n'ai pas encore inséré de javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public String getLink2()
    {
      ListObject lObject= (ListObject)getCurrentRowObject();
      int lId= lObject.getId();
      return "&lt;a href=\"details.jsp?id=" + lId
      + "&amp;action=view\">View&lt;/a> | "
      + "&lt;a href=\"details.jsp?id=" + lId
      + "&amp;action=edit\">Edit&lt;/a> | "
      + "&lt;a href=\"details.jsp?id=" + lId
      + "&amp;action=delete\">Delete&lt;/a>";
    }
    mais je ne comprends pas a quoi correspond la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListObject lObject= (ListObject)getCurrentRowObject();
    Je comprends bien qu'on veut récupérer la ligne courante, mais dois-je créer un bean ListObject ? avec quoi dedans ?
    Par exemple si mon tag display affiche des beans personne (avec nom, prenom, age par ex), je dois créer un bean ListePersonne contenant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public class ListePersonne {
       private Personne p;
    }
    Le bean Personne contenant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public class Personne {
       private String nom;
       private String prenom;
       int age;
    }
    Est-ce ça ou bien est ce que je suis complètement à coté de la plaque ?

    Merci à ceux qui pourront m'aider !

    Flo

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut
    Vraiment personne ?......

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2003
    Messages : 81
    Points : 69
    Points
    69
    Par défaut
    ListObject lObject= (ListObject)getCurrentRowObject();

    tu recuperes bien la ligne courante, mais ListOject, c simplement l'object en court
    qui correspond a l'enseme des object que t'affiche dans ta liste pour la displayTag
    Je te montre un exemple simple tu vas comprendre

    soit ton objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public class Personne extends Object implements Serializable {
    	int id;
    	String nom;
    	String prenom;
     
    	Personne(){
    	}
     
    	etc...
    }
    que tu as passé dans une liste pour le displayTag
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <display:table style="width:1920px" name="sessionScope.listePersonne" class="liste" export="true" sort="list" pagesize="20" id="listelogjob" decorator="com....wrapper.PersonneWrapper" >
    	<display:column property="id" title="ID">
    	<display:column property="nom" title="Nom">
    	<display:column property="prenom" title="Prénom">
    </display:table>
    Dans ton wrapper tu as donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    public class PersonneWrapper extends TableDecorator
    {
        /**
         * Creates a new Wrapper decorator who's job is to reformat some of the data located in our TestObject's.
         */
        public PersonneWrapper()
        {
            super();
     
       }
     
        /**
         * Test method which always returns a null value.
         * @return <code>null</code>
         */
        public String getNullValue()
        {
            return null;
        }
     
        public String getId()
        {
    	Personne personne = (Personne) getCurrentRowObject();
            int index = getListIndex();
            return "<a href=\"monaction.do?index=" + index + "\">" + personne.getId() + "</a>";
        }
     
    	ETc .....
    En fait getCurrentRowObject() recupere ton object définit dans ta liste
    donc tu peux aussi faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.getCurrentRowObject().getNom();
    Pour le passer en parametre dans ton lien

    ++

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut
    Merci bcp seb, ca marche très bien !

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

Discussions similaires

  1. Créer un tableau dynamique avec javascript ?
    Par Amaurysme dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/05/2010, 11h16
  2. lien vers une page dynamique avec javascript
    Par close2me31 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 16/07/2009, 12h46
  3. créer un lien dynamique avec JGraph
    Par imenmannou dans le forum 2D
    Réponses: 3
    Dernier message: 03/09/2008, 15h09
  4. [DisplayTag] Comment créer un lien dynamique
    Par tscoops dans le forum Taglibs
    Réponses: 3
    Dernier message: 17/02/2005, 09h53
  5. Lien ASP avec javascript
    Par RATIER dans le forum ASP
    Réponses: 3
    Dernier message: 15/07/2004, 08h54

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