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

Servlets/JSP Java Discussion :

[debutant] popup et jsp


Sujet :

Servlets/JSP Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 70
    Points : 72
    Points
    72
    Par défaut [debutant] popup et jsp
    Bonjour,
    J'ai une page jsp contenant une liste déroulante sur laquelle j'ai placé une action onchange comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <html:select name="saisieTemplateForm" property="templateName" value="${saisieTemplateForm.templateName}" onchange="this.form.action='updateTemplate.do?action=8';this.form.submit();">
    <html:options name="saisieTemplateForm" property="listTemplate" />
    </html:select>
    Ceci fonctionne mais à présent je voudrais afficher une fenêtre de confirmation, j'ai donc ajouté du javascript mais je n'arrive plus à faire le lien avec mon action.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function test(){
    	var r=confirm("Juste un essai")
    }
    et ma nouvelle combobox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <html:select name="saisieTemplateForm" property="templateName" value="${saisieTemplateForm.templateName}" onchange="javascript:test()">
    <html:options name="saisieTemplateForm" property="listTemplate" />
    </html:select>
    Quelqu'un aurait-il une idée?

  2. #2
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Tu peux faire ça comme combobox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <html:select name="saisieTemplateForm" property="templateName" value="${saisieTemplateForm.templateName}" onchange="javascript:test(this)">
    <html:options name="saisieTemplateForm" property="listTemplate" />
    </html:select>
    et ça comme fonction javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function test(s){
    var r=confirm("Juste un essai");
    if (r) {
    s.form.action='updateTemplate.do?action=8';
    s.form.submit();
    }
    }

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 70
    Points : 72
    Points
    72
    Par défaut
    cela ne fonctionne pas je pense qu'il ne comprend pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    s.form.action='updateTemplate.do?action=8';

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 70
    Points : 72
    Points
    72
    Par défaut
    en fait je sais d'où vient le problème,
    la ligne "s.form.submit();" fait que le formulaire est posté (dans ma jsp l'enregistrement se déclenche) or ce n'est pas ce que je veux.

  5. #5
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Tu utilises un contrôleur étendant DispatchAction et dans web.xml tu as paramétré l'action avec <action... parameter=action ...> ?

    Dans ce cas, il faudrait modifier le script comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function test(obj)
    {
       if ( confirm("Message de confirmation") )
       {
          document.forms[0].action.value = "8";
          document.forms[0].submit();
       }
    }
    Pour l'appel, la solution de chtig est OK

    A+

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 70
    Points : 72
    Points
    72
    Par défaut
    Je ne crois pas que j'utilise un contrôleur étendant DispatchAction mais je n'ai pas défini mon action dans web.xml mais dans struts-config.

    petite précision voici le code (pas complet) de ma jsp:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <jsp:useBean id="saisieTemplateForm" scope="session" class="form.SaisirTemplateForm"/>
    <html:form action="saisieValiderTemplate" method="post" onsubmit="messageAttente()">
    <html:select name="saisieTemplateContactForm" property="templateName" value="${saisieTemplateContactForm.templateName}" onchange="this.form.action='updateTemplateContact.do?action=8';this.form.submit();">
    <html:options name="saisieTemplateForm" property="listTemplate" />
    </html:select>
     
    <p class="texte_centre">
    	    <html:image src="img/btn_valider_on.gif" property="valider" alt="valider"/>
    	    <html:link action="commandAnnuler.do"><img src="img/btn_annuler_on.gif" alt="valider"/></html:link>
     
    </p>
     
    </html:form>
    L'action 8 permet de recharger les autres champs de la jsp, et quand je valide le formulaire j'enregistre dans ma base de données.

    En utilisant les fonctions test que vous m'avez proposé ca part sur l'enregistrement et non sur le rechargement.

    Que dois-je modifier?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 70
    Points : 72
    Points
    72
    Par défaut
    en fait c'est résolu j'ai utilisé la solution d'une autre discussion :
    http://www.developpez.net/forums/sho...d.php?t=336921

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 70
    Points : 72
    Points
    72
    Par défaut
    Finalement il me reste encore un souci, il ne prend pas en compte la nouvelle valeur de la combobox?

Discussions similaires

  1. [Debutant]Question sur JSP/Servlet
    Par smutmutant2003 dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 12/03/2008, 14h56
  2. recuperer une donnée de popup vers jsp
    Par Vaucluse84 dans le forum Struts 1
    Réponses: 1
    Dernier message: 20/05/2007, 22h36
  3. Popup en JSP
    Par midoENSI dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 30/01/2007, 10h10
  4. [Debutant] Redirection Servlet -> JSP
    Par tck-lt dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 13/12/2006, 15h53
  5. [Debutant] probleme tag jsp:useBean
    Par stringman62 dans le forum Taglibs
    Réponses: 3
    Dernier message: 02/11/2006, 21h17

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