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 2 Java Discussion :

comment aligner champ / bouton submit sur une ligne?


Sujet :

Struts 2 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Développeur Full Stack
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Par défaut comment aligner champ / bouton submit sur une ligne?
    Bonjour

    Je suis confronté à un probleme avec struts 2. Comment puis je afficher un formulaire simple sur une seule ligne? Cad:
    <label> : <champ> <submit>

    Or Struts2 genere du code html et j'ai toujours
    <label> : <champ>
    <submit>

    Je recherche une methode simple sinon, y a t il un moyen de ne pas utiliser les templates? Car je ne trouve pas tres facile l'usage des templates?
    Merci.

  2. #2
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 58
    Par défaut
    Salut,
    Je n'ai pas non plus réussi à aligner le bouton avec les champs précédents, mais j'ai une idée de ce que tu peux faire, même si ce n'est pas vraiment "propre":

    Tu fais un tableau et dans chaque colonne tu mets un champ, avec le bouton submit dans la dernière colonne.

    Si tu ne mets pas de style à ton tableau il sera invisible et tout sera aligné ;-)

    j'espère que ça te va comme réponse :-)

    Si quelqu'un d'autre a une meilleure méthode, je suis preneur :-)

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Par défaut
    Bonjour,

    En fait, si votre champ et votre bouton ne sont pas alignés c'est parce que défaut, la form a pour theme : "xhtml". Or ce thème génére automatiquement un tableau pour organiser les différents éléments du formulaire.
    Vous pouvez spécifier un autre thème ne générant pas ce tableau (simple, css_html, css_xhtml, ...), en faisant par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <s:form theme="simple" ...></s:form>
    Renseignez vous sur ces différents thèmes, ils ont chacun leurs spécificités (le thème "simple" étant la base de tous les autres).

  4. #4
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 58
    Par défaut
    Merci pour tes lumières, Gtinaut, je vais me pencher un peu sur les thèmes pour voir ce que ça donne...

    Personnellement je mets le submit à l'extérieur du <form>, donc je pense qu'il sera de toutes façons à la ligne...

    En ce moment je me lance dans la recherches de bibliothèques de menus, donc je reviendrai à cette partie plus tard

  5. #5
    Membre habitué
    Profil pro
    Développeur Full Stack
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Par défaut
    Citation Envoyé par Gtinaut Voir le message
    Bonjour,

    En fait, si votre champ et votre bouton ne sont pas alignés c'est parce que défaut, la form a pour theme : "xhtml". Or ce thème génére automatiquement un tableau pour organiser les différents éléments du formulaire.
    Vous pouvez spécifier un autre thème ne générant pas ce tableau (simple, css_html, css_xhtml, ...), en faisant par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <s:form theme="simple" ...></s:form>
    Renseignez vous sur ces différents thèmes, ils ont chacun leurs spécificités (le thème "simple" étant la base de tous les autres).
    Merci pour cette réponse je n'avais pas essayé le theme simple, effectivement il permet de supprimer le tableau, malheureusement il supprime aussi le systeme de validation que j'utilise dans les formulaires. Je vais me pencher sur les autres themes en esperant trouver mon bonheur. Dommage que par défaut il n'existe pas un theme qui permette de switcher la presentation du formulaire entre les 2 modes "aligné/tableau".

  6. #6
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Par défaut
    En effet, il ne permet pas la validation mais les deux autres themes que j'ai cité le permettent ! Donc tu peux les utiliser !

  7. #7
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 58
    Par défaut
    Tant qu'on parle des thèmes, j'ai une question à ce sujet: je viens de faire des essais avec ce que tu nous donnes comme exemple, et je trouve que cela ne change rien du tout, si ce n'est que parfois rien ne s'affiche.

    Par exemple, avec le plugin tabletags:
    http://cwiki.apache.org/S2PLUGINS/table-tag.html

    pas moyen d'avoir un style sur ces tables... les thèmes n'ont aucun effet.
    Notamment, le theme "ajax" ne veut pas se charger pour les tables.

    C'est peut être normal, dû au fait que c'est un plugin, mais avec d'autres tags comme "form", ça marche pas mieux...

    Est ce que tu as une idée de la provenance de ces problèmes, par hasard? :-)

  8. #8
    Membre habitué
    Profil pro
    Développeur Full Stack
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Par défaut
    Citation Envoyé par danyric Voir le message
    Bonjour

    Je suis confronté à un probleme avec struts 2. Comment puis je afficher un formulaire simple sur une seule ligne? Cad:
    <label> : <champ> <submit>

    Or Struts2 genere du code html et j'ai toujours
    <label> : <champ>
    <submit>

    Je recherche une methode simple sinon, y a t il un moyen de ne pas utiliser les templates? Car je ne trouve pas tres facile l'usage des templates?
    Merci.
    Je réponds tardivement avec une solution alternative que j'ai employé plus légère que l'écriture d'un theme quand il s'agit juste d'aligner un formulaire sur une page.
    Apres avoir testé tout les thèmes comme proposé par Gtinaut, aucun ne remplissent cette fonction, par contre j'ai retenu le theme css_xhtml, et je lui ai appliqué les styles necessaires.
    Ainsi:

    un formulaire simple
    comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <s:form action="login_input" validate="true" >
    <s:textfield label="%{getText('form.email')}" key="email" required="true" cssStyle="width=200px;" />
    <s:submit   key="button.ok"/>
    </s:form>
    qui se présente comme ceci
    Nom : form_nonalign.png
Affichages : 552
Taille : 1,4 Ko

    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
    <html>
    <head>
    <style type="text/css">		
    .wwlbl  {
    	float: left;
    	padding: 5px 10px 0 0;
    }
    .wwgrp br {
    	display: none;
    }
    .wwctrl  {
    	float: left;
    	padding: 3px 10px 0 0;
    }
    </style>
    </head>
    <body>
    <s:form action="login_input" validate="true"  theme="css_xhtml">
    <s:textfield label="%{getText('form.email')}" key="email" required="true" cssStyle="width=200px;"/>
    <s:submit cssStyle="float:left;"  key="button.ok"/>
    </s:form>
    </body>
    </html>
    Se présente enfin comme cela
    Nom : form_align.png
Affichages : 564
Taille : 1,4 Ko

    Voila une solution simple et légère, en esperant que cela puisse servir à d'autres.

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

Discussions similaires

  1. Boutons superposés sur une ligne
    Par Luke spywoker dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 22/08/2011, 09h02
  2. Réponses: 0
    Dernier message: 01/10/2009, 17h23
  3. Réponses: 3
    Dernier message: 23/07/2009, 13h11
  4. Réponses: 2
    Dernier message: 16/03/2006, 19h07

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