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

JSF Java Discussion :

Submit sans button


Sujet :

JSF Java

  1. #1
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut Submit sans button
    bonjour,

    comment envoyer un formulaire ou ya juste un input text, l'envoi de se fera avec le button entrer.

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:commandButton value="enter"/>

  3. #3
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Moi j'utilise ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a4j:commandButton type="submit" .../>
    Mais ça doit marcher avec <h:commandButton/> je pense.

    Maintenant, si tu ne veux pas mettre de bouton du tout, tu peux passer par les attributs onkeyXXX et faire un test sur le type de touche (si je ne m'abuse, c'est event.keyCode == 13) et faire un this.form.submit();
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    Moi j'utilise ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a4j:commandButton type="submit" .../>
    Mais ça doit marcher avec <h:commandButton/> je pense.

    Maintenant, si tu ne veux pas mettre de bouton du tout, tu peux passer par les attributs onkeyXXX et faire un test sur le type de touche (si je ne m'abuse, c'est event.keyCode == 13) et faire un this.form.submit();
    ouii au fait je ne veu pas mettre de button..le code est bien 13 mais comment l'utiliser avec a4J...par exemple ..

  5. #5
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Une idée :

    Tu ajoutes un <a4j:support> à ton inputText en faisant quelque chose du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <h:inputText ...>
        <a4j:support event="onkeyup" onsubmit="if (event.keyCode != 13) { return false}" action="#{myBean.doSomething}"/>
    </h:inputText>
    En gros :
    L'a4j:support va ajouter un listener sur ton inputText. A chaque appui sur une touche du clavier, si ce n'est pas la touche Enter (keyCode != 13), alors on ne fait rien (grâce au return false). Si c'est la touche enter (keyCode == 13), alors le JS exécuté par onsubmit ne retourne rien, et la requête Ajax est envoyée au serveur. La méthode myBean.doSomething est alors exécutée.
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  6. #6
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    Une idée :

    Tu ajoutes un <a4j:support> à ton inputText en faisant quelque chose du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <h:inputText ...>
        <a4j:support event="onkeyup" onsubmit="if (event.keyCode != 13) { return false}" action="#{myBean.doSomething}"/>
    </h:inputText>
    En gros :
    L'a4j:support va ajouter un listener sur ton inputText. A chaque appui sur une touche du clavier, si ce n'est pas la touche Enter (keyCode != 13), alors on ne fait rien (grâce au return false). Si c'est la touche enter (keyCode == 13), alors le JS exécuté par onsubmit ne retourne rien, et la requête Ajax est envoyée au serveur. La méthode myBean.doSomething est alors exécutée.
    mercii c'est exactement ce que je voulais faire..ça marche super bien..

    à++

  7. #7
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    non au fait je suis allé un peu trop vite..

    ça marche bien.mais le probleme est que le reRender ne fonctionne pas..il recalcule pas les composants à rafraichir ..

  8. #8
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    On peut voir un peu ton code ?

    Eventuellement, ajoute un <a4j:log popup="false"/> (attention, c'est très verbeux) dans ta page, histoire de voir s'il n'a pas un pb lors de la recherche des composants à rafraichir...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  9. #9
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    voilà le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <h:inputText value="#{beanr.search}" id="text">
    <a4j:support event="onkeyup"
    onsubmit="if (event.keyCode != 13) { return false}"
    reRender="table,size" action="#{bean.onSearch}" />
    </h:inputText>
    quand je fais l'action sur l'evenement onblur ça marche bien ..

  10. #10
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Et le <a4j:log/> n'indique rien d'étrange ? Pas d'erreur ou warning ?
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  11. #11
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    Et le <a4j:log/> n'indique rien d'étrange ? Pas d'erreur ou warning ?
    non le log n'affiche rien..et mme pas un warning!!

  12. #12
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    et ça fonctionne sous FireFox..mais toujours pas sur IE7..

  13. #13
    sup
    sup est déconnecté
    Membre confirmé Avatar de sup
    Profil pro
    Inscrit en
    Août 2004
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 70
    Par défaut
    essaye d'ajouter
    immediate="true"
    dans ton <a4j:support ... />

  14. #14
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par sup Voir le message
    essaye d'ajouter
    immediate="true"
    dans ton <a4j:support ... />
    la meme chose.
    au premier appel ajax, la liste n'est pas rafraichi..au second.. ouii!!!

  15. #15
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 14
    Par défaut Rafraichissement au second ENTER seulement...
    Citation Envoyé par Sniper37 Voir le message
    la meme chose.
    au premier appel ajax, la liste n'est pas rafraichi..au second.. ouii!!!
    J'ai exactement le même problème.... est-ce que quelqu'un a trouvé une solution?

    Merci d'avance

  16. #16
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Non..au fait j'utilise l'evenement onblur et l'utilisateur se sert de la touche tabulation..ça fonctionne mieux moins intuitif que la touche Enter..

  17. #17
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Bonjour.
    Tout d'abord une remarque:
    Au lieu de faire :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <h:inputText value="#{beanr.search}" id="text">
    <a4j:support event="onkeyup"
    onsubmit="if (event.keyCode != 13) { return false}"
    reRender="table,size" action="#{bean.onSearch}" />
    </h:inputText>

    il suffit de faire :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <h:inputText value="#{beanr.search}" id="text">
    <a4j:support event="onchange"
    reRender="table,size" action="#{bean.onSearch}" />
    </h:inputText>
    ça faut exactement la même chose, mais c'est plus simple, hein ?

    Ensuite, une piste possible serait de mettre le dataTable (ou tout autre élément à redessiner) dans un:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <a4j:outputPanel ajaxRendered="true">
    :
    :
    :
    </a4j:outputPanel>

    Bonne chance.

  18. #18
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    j'avais dejà tester ce code mais ça ne fonctionne pas!!
    j'ai l'impression que le probleme vient de l'interpreation du navigateur de l'eveneter onkeyup.
    sur FF ça marche mieux..

  19. #19
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Quand tu dis ce code, tu parles de l'évènement onchange ? Parceque chez moi, ça marche aussi bien que dans Firefox que dans IE (et pas n'importe lequel, le 6 s'il vout plaît )

  20. #20
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par djo.mos Voir le message
    Quand tu dis ce code, tu parles de l'évènement onchange ? Parceque chez moi, ça marche aussi bien que dans Firefox que dans IE (et pas n'importe lequel, le 6 s'il vout plaît )
    justement la cause de mes soucis c'est IE7!!

Discussions similaires

  1. submit ou button?
    Par jalam dans le forum ASP
    Réponses: 4
    Dernier message: 16/02/2007, 15h15
  2. Input type submit sans le bouton.. comment ?
    Par unreal2me dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 07/02/2007, 15h36
  3. submit sans changer de page
    Par trax44 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/11/2006, 10h05
  4. [HTML] Lien submit sans input de type submit
    Par escafr dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 24/11/2005, 10h57
  5. css sur le submit et button
    Par mic79 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 19/01/2005, 09h51

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