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

JavaScript Discussion :

Renvoyer la meme action d'un formulaire


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de Bigoodheart
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 154
    Points : 71
    Points
    71
    Par défaut Renvoyer la meme action d'un formulaire
    Bonjour,

    En fait j'ai une question à poser, je travaille en J2ee(Java+struts2+JS)j'ai un formulaire avec deux boutons ,un pour la recherche rapide et l'autre pour la recherche avancé .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    /*Recherche rapide*/
    function qsearch() {
    	$('fcontactmap').action = 'query?qsearch';
    	$('fcontactmap').submit();
    }
    /* Recherche avancé */
    function fsubmit() {
    	$('fcontactmap').action = 'query';
    	$('fcontactmap').submit();
    }
    et aprés dans le résultat j'ai un bouton pour exporter le resultat de la recherche en cours à Excel !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input class='excel' type='button' value="Export to Excel " onclick ='$("fresult").action="query?excel+qsearch";$("fresult").submit();'>
    J'ai besoin de renvoyer l'action en cours qu'elle soit rapide ou détaillée pour faire le meme traitement coté java et renvoyer une extention ".xls"

    comment je pourrai resoudre ce probleme coté javascript ?

  2. #2
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 842
    Points
    4 842
    Par défaut
    En mettant une variable globale contenant l'action du formulaire, c'est pas possible ?

    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
    var formAction = 'query';
     
    /*Recherche rapide*/
    function qsearch() {
    	formAction = 'query?qsearch';
    	$('fcontactmap').action = formAction;
    	$('fcontactmap').submit();
    }
    /* Recherche avancé */
    function fsubmit() {
    	formAction = 'query';
    	$('fcontactmap').action = formAction;
    	$('fcontactmap').submit();
    }
     
    //////////////////
     
    <input class='excel' type='button' value="Export to Excel " onclick ='$("fresult").action="query?excel+qsearch&formAction="+formAction;$("fresult").submit();'>

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Bonjour,

    Dans ton cas pourquoi ne pas utiliser le même formulaire (fcontactmap) pour la génération Excel ?
    De cette manière tu aurais déjà l'ensemble des données de recherche transmises automatiquement.


    devyan

  4. #4
    Membre régulier Avatar de Bigoodheart
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 154
    Points : 71
    Points
    71
    Par défaut
    Merci de votre reponse !
    @ Loceka

    ça marche pas

    @ devyan

    le probleme c'est que j'ai la méme fenetre qui se génére pour les deux types de requétes !

    C'est à dire un seul bouton Excel !qui prend en compte les deux types de query !

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Citation Envoyé par foufatoon Voir le message
    le probleme c'est que j'ai la méme fenetre qui se génére pour les deux types de requétes !

    C'est à dire un seul bouton Excel !qui prend en compte les deux types de query !
    Evidemment que tu ne génères pas la même présentation de tes données de réponse... Cependant côté javascript rien ne t'impose d'utiliser 2 formulaires différents d'autant plus que dans ton exemple tu exécute la même action "query".

    Par contre, côté Java (sur ton serveur) tu vas devoir détecter que tu as envoyé "excel+qsearch".
    Mais ça tu sais déjà le faire puisque tu fais la différence entre "qsearch" et ""

    devyan

  6. #6
    Membre régulier Avatar de Bigoodheart
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 154
    Points : 71
    Points
    71
    Par défaut
    Justement coté java je récupére mes paramétres de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    boolean excel = (getParameters().get("excel") != null);
    boolean qsearch = (getParameters().get("qsearch") != null);
    je ne connais pas la bonne syntaxe pour passer plusieurs parametre via le formulaire ,je réussis avec un seul mais la y en a deux !!

    à vrai dire je ne maitrise pas trop le passage de paramètre via les formulaires ,j'avais avant avec new Ajax.Updater et je pouvais passer plusieurs paramétre séparé par un "&" et la je sais pas comment proceder

  7. #7
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    La syntaxe d'envoi de paramètre HTTP en GET est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://monserveur/etc/action?param1=valeur&param2=valeur&etc=valeur
    Ensuite, il est possible de modifier ce comportement par défaut avec les configurations serveur.

    Dans ton cas, tu pourrais aussi remplacer la fin de l'action (ce qui est après "?") par un <input type="hidden" value=""/> (ou 2 si tu préfères) que tu modifies en fonction du cas.

    Code exemple HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input type="hidden" id="qsearch" value=""/> 
    <input type="hidden" id="excel" value=""/>
    Code exemple JS : 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
     
    /*Recherche rapide*/
    function qsearch() {
    	$('qsearch').value = "1";
    	$('fcontactmap').submit();
    }
    /* Recherche avancé */
    function fsubmit() {
    	$('qsearch').value = "";
    	$('fcontactmap').submit();
    }
    /* Recherche vers Excel */
    function fsubmit() {
    	$('excel').value = "1";
    	$('fcontactmap').submit();
    }

  8. #8
    Membre régulier Avatar de Bigoodheart
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 154
    Points : 71
    Points
    71
    Par défaut
    Merci pour l'explication !!
    en fait le lien que vous m'avez filé ne marche pas !

    Merci infiniment

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Citation Envoyé par foufatoon Voir le message
    Merci pour l'explication !!
    en fait le lien que vous m'avez filé ne marche pas !

    Merci infiniment
    C'est parce que ce n'est pas un vrai lien, juste un exemple d'url avec des paramètres
    J'ai corrigé dans la message original

  10. #10
    Membre régulier Avatar de Bigoodheart
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 154
    Points : 71
    Points
    71
    Par défaut
    ah ok merci

Discussions similaires

  1. Réponses: 4
    Dernier message: 22/12/2007, 09h59
  2. Réponses: 5
    Dernier message: 20/07/2007, 14h11
  3. [STRUTS] Problème Name+Action d'un Formulaire
    Par javaSudOuest dans le forum Struts 1
    Réponses: 6
    Dernier message: 23/09/2005, 17h28
  4. Action sur sous-formulaire filtré
    Par thevenix dans le forum IHM
    Réponses: 4
    Dernier message: 20/06/2005, 00h39
  5. [JSP]meme action dans 2 jsp
    Par zach dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 24/02/2005, 08h34

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