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 :

[html:select] action sur le premier élément


Sujet :

Struts 1 Java

  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut [html:select] action sur le premier élément
    Bonsoir,

    Un petit problème à vous soumettre :
    J'ai un <html:select> classique :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <html:select property="selectedPatient" onchange="submit()" >
    	  <html:options collection="listPatient" property="id" labelProperty="nom"/>
    </html:select>
    Le soucis c'est que la liste pointe automatiquement sur le premier élément de la liste. Et je ne sais pas quel événement (onchange, onclick,...) lui appliquer pour que l'action se déclenche quand je clique sur ce premier élément.

    Merci pour votre réponse!

  2. #2
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Encore toi.

    Tu peux par exemple afficher une option à blanc avant les autres options :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <html:select property="selectedPatient" onchange="submit()">
      <html:option value=""/>
      <html:options collection="listPatient" property="id" labelProperty="nom"/>
    </html:select>

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut
    oui, j'ai mes cycles.
    le soucis avec cette solution c'est que si je clique sur le second element, et ensuite sur le premier ca me fait planter l'Action car j'ai un objet vide du coup.
    Donc je pense que je dois forcément coder qqchose coté serveur pour pour tester si j'ai cliqué sur la valeur "vide" ou pas?
    Pardonne moi, mais si c'est le cas laisse moi te dire que le <html:select> presente un serieux défaut! bon t'y es pour rien c'est sûr...

  4. #4
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Dans ce cas, il faut effectivement vérifier que la propriété n'est pas égale à null dans la méthode validate de l'ActionForm ou via le Validator.

    Bref, j'avoue que ma solution n'est pas idéale mais je ne vois pas quel autre évènement puisse convenir à ton besoin.
    Teste-les un par un et peut-être que tu trouveras le bon.

  5. #5
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Après réflexion, je ne vois pas comment tu peux déclencher un évènement s'il n'y a aucune action de l'utilisateur sur la liste déroulante.

    Une solution serait d'ajouter un bouton à côté du select qui déclencherait le submit du formulaire lorsque l'on cliquerait dessus.

  6. #6
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut
    Ok, donc aucune action possible s'il y a un seul élément dans la liste.
    A moins qu'une subtilité m'ait échappé.
    Je vais essayer chaque action possible, peut etre qu'une peut gérer une liste à un seul élément ou à plusieurs éléments!

  7. #7
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    S'il y a un seul élément dans la liste, tu le sais avant l'affichage et donc tu peux agir en conséquence.

    Que déclenches-tu après le submit du formulaire ? tu pré-remplis des champs ?

  8. #8
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut
    En fait, le problème ne se pose pas tant s'il y a un seul élément dans la liste, mais si l'utilisateur veut choisir le premier élément de la liste et déclencher l'action associée au submit (ici, récupérer l'élément dans la liste des symptômes et le mettre dans une autre liste : symptômes choisis) : C'est impossible si on ne créé pas un enregistrement vide au début de la liste.

  9. #9
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Désolée mais je ne vois pas d'autre solution que l'option vide au début de la liste, qui oblige l'utilisateur à faire une sélection, ou le bouton OK à côté du select.

  10. #10
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut
    C'est bien ce qui me semblait.
    Mais je suis surpris que personne ne se soit plaint de ce petit défaut!
    Merci.

  11. #11
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Le problème doit se poser aussi en html pur.

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

Discussions similaires

  1. Menu avec hover sous ie6 sur le premier élément de la liste
    Par fabight dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 24/05/2008, 13h37
  2. [ksh] Boucle sur le premier élément de chaque ligne d'un fichier
    Par psykoleouf dans le forum Shell et commandes GNU
    Réponses: 9
    Dernier message: 06/12/2007, 16h13
  3. Réponses: 4
    Dernier message: 13/02/2007, 16h40
  4. Réponses: 3
    Dernier message: 06/10/2006, 14h55
  5. Réponses: 2
    Dernier message: 11/01/2005, 14h10

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