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 :

remplir un tableau en cliquant dans une liste, javascript obligé?


Sujet :

Struts 1 Java

  1. #1
    Membre du Club
    Inscrit en
    juillet 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : juillet 2003
    Messages : 81
    Points : 46
    Points
    46
    Par défaut remplir un tableau en cliquant dans une liste, javascript obligé?
    bonjour!

    toujours sur mon projet en struts niveau hyper debutant, j'ai un formulaire qui me liste dant un tableau tout mes "Employe" et dessous un form qui me permet de saisir les nouveaux employés.

    Maintenant je voudrais qu'en cliquant sur un employé de la liste toutes les infos soient mises dans mon formulaire de saisie (donc remplir tout les champs texte et positionner les select) afin d'ajouter la fonction modification et suppression.

    Je précise qu'il est souhaitable de ne pas utiliser de frames et donc de conserver mon unique jsp pour l'ajout, la modification et la suppression.

    donc ma question est : comment connaitre la position de l'element selectionné dans ma liste de bean pour le transmettre en variable a ma page (en faisant donc un rechargement de celle-ci afin de recuperer cet position et de remplir mes champs).

    Et bien sûr, est-ce faisable ou suis-je obligé de passer par javascript (ce que je n'aimes pas trop afin d'être le plus possible tn html simple pour l'inter-operabilité)

  2. #2
    Nouveau membre du Club
    Inscrit en
    mars 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : mars 2007
    Messages : 23
    Points : 28
    Points
    28
    Par défaut
    ça dépend de comment tu as codé ton form et comment tu as rempli ton tableau.
    Balance le code de ta jsp.

  3. #3
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Personnellement il y a 2 solutions affichés tous tes employés dans un select et faire un evenement onclick => appeler l'action qui load : il y a un minimum de javascript (1 ligne).

    Sinon tu met tes employés dans un tableau. Lors du logic:iterate (en meme temps que l'affichage des employés => si tu utilise struts j'espere que tu utilises logic:iterate pour afficher la liste de tes employés), il faut que tu mettes un lien hypertexte (vu que tu ne veux pas de javascript), qui contient l'action a appeler mais aussi l'id de ta colonne (indexId sur le logic iterate).

    Voilà j'espere que j'ai été assez clair. Pour moi c'est simple donc j'espere que j'ai assez détaillé. Sans javascript 100% faisable. Par contre j'espere que tu as pensé au DispatchAction........
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  4. #4
    Nouveau membre du Club
    Inscrit en
    mars 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : mars 2007
    Messages : 23
    Points : 28
    Points
    28
    Par défaut
    je crois que t'as tout dit ...

  5. #5
    Membre du Club
    Inscrit en
    juillet 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : juillet 2003
    Messages : 81
    Points : 46
    Points
    46
    Par défaut
    Citation Envoyé par maxf1
    il faut que tu mettes un lien hypertexte (vu que tu ne veux pas de javascript), qui contient l'action a appeler mais aussi l'id de ta colonne (indexId sur le logic iterate).

    Voilà j'espere que j'ai été assez clair. Pour moi c'est simple donc j'espere que j'ai assez détaillé. Sans javascript 100% faisable. Par contre j'espere que tu as pensé au DispatchAction........
    très clair, le lien hypertext etant ce que je songeait a faire bien entendu! et j'utilises deja le dispatchaction sur ce formulaire (en fait c'est le même qu'un de mes precedents sujet pour lequel j'ai fais celui "mise en oeuvre de dispatchaction").

    Donc en fait, je repasse par mon action obligatoirement si je veux eviter le javascript...

  6. #6
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Ah oui il te faut repasser par ton action pour completer les champs souhaité c'est obligatoire. Du moins je ne connais pas de methode pour ne pas le faire et en evitant javascript!
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  7. #7
    Membre du Club
    Inscrit en
    juillet 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : juillet 2003
    Messages : 81
    Points : 46
    Points
    46
    Par défaut
    ok c'est ce que je voulais savoir en fait merci

    petit quizz, pour le logic:present il n'ya pas de else? je suis obligé de faire logic:empty en complement c'est bien ça? (ben oui, faut bien que mon champ texte existe en cas de nouvelle saisie et non pas seulement en edition)

  8. #8
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Ah non pas de else possible, ce que je trouve bien dommage d'ailleurs.

    Sinon faut utiliser des librairies qui existent, mais bon ...
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  9. #9
    Membre du Club
    Inscrit en
    juillet 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : juillet 2003
    Messages : 81
    Points : 46
    Points
    46
    Par défaut
    ok, donc j'ai tenté ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <logic:present name="employeSel">
        <html:text name="employeSel" property="nom" size="20" maxlength="20" value="nom"/>
    </logic:present>
    <logic:notPresent name="employeSel">
        <html:text property="nom" size="20" maxlength="20"/>
    </logic:notPresent></td>
    mais il ne m'affiches pas la valeur de la variable nom mais "nom"

  10. #10
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut


    Il affiche ce que tu lui demandes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <logic:present name="employeSel">
        <html:text name="employeSel" property="nom" size="20" maxlength="20" value="nom" />
    </logic:present>
    <logic:notPresent name="employeSel">
        <html:text property="nom" size="20" maxlength="20"/>
    </logic:notPresent></td>

    Faut enlever le value!!
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  11. #11
    Membre du Club
    Inscrit en
    juillet 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : juillet 2003
    Messages : 81
    Points : 46
    Points
    46
    Par défaut
    ah ok... autant pour moi

    je pensait qu'il fallait mettre le nom de la propriete a afficher dans value...

  12. #12
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Citation Envoyé par gregounet
    ah ok... autant pour moi

    je pensait qu'il fallait mettre le nom de la propriete a afficher dans value...
    Non seuleument dans property d'ailleur je n'utilise jamais la propriété value, je ne savais meme. A la limite ca peut-etre bien pour initialiser un champs par defaut meme si je trouve ca cradosse car vaut mieux le faire dans le type (dans le cas de chaine vide ou boolean) ou l'action s'il y a des valeurs précises!!
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  13. #13
    Membre du Club
    Inscrit en
    juillet 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : juillet 2003
    Messages : 81
    Points : 46
    Points
    46
    Par défaut
    je penses qu'elle est simplement là pour relayer la propriété value de la balise html de base...

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/07/2012, 14h31
  2. Remplir un tableau dynamique 2D dans une fonction
    Par lmanceau dans le forum C++
    Réponses: 5
    Dernier message: 27/06/2011, 13h57
  3. problème de valeur dans un tableau se trouvant dans une liste
    Par alaninho dans le forum Général Python
    Réponses: 5
    Dernier message: 16/06/2011, 10h17
  4. Réponses: 4
    Dernier message: 22/06/2009, 12h12
  5. Réponses: 3
    Dernier message: 26/08/2006, 14h03

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