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

NetBeans Java Discussion :

[Visual Web] [SJSC2] Modification d'une ligne d'une Table


Sujet :

NetBeans Java

  1. #1
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 89
    Points : 84
    Points
    84
    Par défaut [SJSC2] Modification d'une ligne d'une Table
    Bonjour,
    j'ai utilisé un composant de JSC2 pour créer une table que j'ai liée à une table de ma base de données. L'affichage des informations se passe sans problème.
    J'ai rajouté une colonne supplémentaire à ma table contenant un bouton "Modifier" qui me servira à éditer la ligne associée et deux boutons invisibles à la base "Valider" et "Annuler".
    Lorsque je clique sur ce bouton, je veux que celui-ci disparaisse et que les deux autres apparaissent ...
    Pour l'instant, je fais disparaitre tous les boutons de la colonne... Comment faire pour ne faire disparaitre que celui de la ligne ?
    Quelques précisions :
    Table t1 de type com.sun.rave.web.ui.component.Table
    TableRowGroup row1 de type com.sun.rave.web.ui.component.TableRowGroup
    Plusieurs colonnes de type com.sun.rave.web.ui.component.TableColumn
    La colonne col11 contient mes 3 boutons "mod", "valid" et "cancel".

    Je pose là question dans ce forum car on me l'a indiqué dans un autre post pour les questions sur JSC2.

    Nico

  2. #2
    Expert confirmé
    Avatar de Valère
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 334
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2005
    Messages : 1 334
    Points : 4 740
    Points
    4 740
    Par défaut
    Je vois deux possibilités: soit tu le fais en javascript, (et là je ne peux pas aller plus loin ) soit le click sur Modifier renvoie la page au serveur, et là tu utilises la propriété "rendered" de tes boutons pour les faire apparaître ou disparaître à volonté (tu lie la propriété rendered de tes boutons à une méthode de tes backing beans).

    Dans ton bean, rajoutte une méthode:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        public boolean isEditMode() {
            return booleanEditMode;
        }
    Et dans ton jsp,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <ui:button binding="#{Page1.button1}" id="button1" rendered="!#{Page1.editMode}" text="Modifier"/>
    <ui:button binding="#{Page1.button2}" id="button2" rendered="#{Page1.editMode}" text="Annuler"/>
    <ui:button binding="#{Page1.button3}" id="button3" rendered="#{Page1.editMode}" text="Valider"/>
    Note le point d'exclamation dans le champ rendered pour le bouton modifier.

    Bien sur il faut initialiser dans les handlers de tes boutons le booleen booleanEditMode.

  3. #3
    Expert confirmé
    Avatar de Valère
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 334
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2005
    Messages : 1 334
    Points : 4 740
    Points
    4 740
    Par défaut
    Euh je raconte un peu des bétises là: dans le handler de tes boutons, tu récupère quelle ligne est modifiée (il doit y avoir une clef primaire dans ton tableau).

    Ensuite dans la methode isEditMode(), il faut récupérer la clef primaire de la ligne actuellement traitée:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
       public boolean isEditMode() {
           boolean bEditMode;
           int currentLine = ((Integer) getValue("#{currentRow['YOURCOLLUMNNAME']}")).intValue();
           return (currentLine == editedLine);
       }

  4. #4
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 89
    Points : 84
    Points
    84
    Par défaut
    Merci j'ai réussi à m'en sortir en utilisant ce que tu m'as proposé...

    Nico

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/01/2015, 18h30
  2. Réponses: 4
    Dernier message: 24/11/2014, 12h12
  3. Récupérer une information d'une ligne dans une table
    Par Lebas dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 12/04/2013, 10h24
  4. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  5. [VB6]créer une copie d'une ligne d'une table
    Par h82kev dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 01/02/2006, 16h08

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