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 :

[AJAX] Ajax Post


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de stela86
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut [AJAX] Ajax Post
    Bjr,
    J'aurai voulu savoir comment faire pour envoyer une variable via Ajax a ma page .jsp ?

    Voilà une partie de mon code qui m'envoie la variable! enfin je crois !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    xhr.open("POST","ajax1.jsp",true);
    var data = "ville="+strg;
    xhr.send(data) ;
    Dans mon jsp je fais comment pour recuperer ma variable ? ? ?

    Merci d'avance pour votre aide

  2. #2
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut Re: Ajax Post
    Citation Envoyé par stela86
    Dans mon jsp je fais comment pour recuperer ma variable ? ? ?
    Comme d'hab, avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <%=request.getParameter('ville')%>
    Par exemple.... Question J2EE beaucoup plus que Javascript pour le moment.

  3. #3
    Membre confirmé Avatar de stela86
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    en fait j'ai décidé de passer mon parametre par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr.open("GET","ajax1.jsp?ville=maville",true);
    le probleme c'est qu'en passant par cette fonction je n'afficher rien mais si j'ouvre ma page ajax1.jsp directement dans l'url comme par exemple ajax1.jsp?ville=maville , il m'affiche bien ma ville!

  4. #4
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par stela86
    en fait j'ai décidé de passer mon parametre par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr.open("GET","ajax1.jsp?ville=maville",true);
    le probleme c'est qu'en passant par cette fonction je n'afficher rien mais si j'ouvre ma page ajax1.jsp directement dans l'url comme par exemple ajax1.jsp?ville=maville , il m'affiche bien ma ville!
    Euh, c'est à dire? La tu nous montre juste l'appel. Si tu veux qu'on parle de l'affichage, il faut que tu nous montre la ou tu l'affiches....

  5. #5
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut Idee comme ca :
    Une idée qui me vient comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr.send("?ville=" + ville);
    Fremy

  6. #6
    Membre expérimenté
    Inscrit en
    Mai 2005
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 217
    Par défaut
    Ohhhhhlaa !!

    Je suis peut etre con ... mais ajax c'est pas pr dialogue de manière asynchrone avec le serveur ??? (enfin moi c'est comme ca q je l'utilise) et donc du coup pq appeler une JSP ?? (moi c'est plus des servlets que j'appelle!)

    qq'1 peut eclairer ma lanterne ??

  7. #7
    Membre confirmé Avatar de stela86
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    Comment l'utilise tu ? Peux tu donner un exemple de se que tu fais ?

  8. #8
    Membre expérimenté
    Inscrit en
    Mai 2005
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 217
    Par défaut
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
     
     
    // Envoi une requete avec les données passées en parametre
        function sendRequest(data){
            // Récupère une HttpRequest
            var http_request = getHttpRequest(); 
     
            if (!http_request){
                // Requete impossible
                alert("XMLHttpRequest non supporté par votre navigateur Internet");
                return 0;
            }
     
            // Faire la requete AJAX
            //-------------------------------
            // 1 - Appel de la fonction de retour
        // 2 - Open(mode, url, boolean)
        //   -> mode: type de requête, GET ou POST
            //   -> url: l'endroit ou trouver les données, un fichier avec son chemin sur le disque.
            //   -> boolean: true (asynchrone) / false (synchrone).
           // 3 - Ne pas oublier ça pour la methode POST
            // 4 - Effectue la requête en envoyant les données :       
     
        http_request.onreadystatechange = function() { onResult(http_request); };
            http_request.open('POST', "<NOM DE LA SERVLET>", true);
            http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
            http_request.send(data); // Format -> var1=truc&var2=bidule
        }
     
     
        // Fonction appelée qd la requete est finie
        function onResult(http_request) {
            if (http_request.readyState == 4) {        /* 4 : état "complete" */
                if (http_request.status == 200) {         /* 200 : statut OK"     */
     
                            // TODO
     
                            }
            }
        }
     
     
        // ------------------------------------ Fonction AJAX ------------------------------------------------------
        // Donne une instance HttpRequest selon le navigateur (renvoie HttpRequest ou false si pb)
        function getHttpRequest() {
            var http_request = false;
            if (window.XMLHttpRequest) { // Mozilla, Safari,...
                http_request = new XMLHttpRequest();
                if (http_request.overrideMimeType) {
                    http_request.overrideMimeType('text/xml');
                }
            } else if (window.ActiveXObject) { // IE
                try {
                    http_request = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                    try {
                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                    } catch (e) {}
                }
            }
     
            if (!http_request) {
                alert('Impossible de créer une instance XMLHTTP');
            }
            // Soit false si pb soit l'objet http_request
            return http_request;
        }

  9. #9
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par _beber85
    if (http_request.status == 200) { /* 200 : statut OK" */

    // TODO

    }
    Euh, en l'occurence, tout est là. Il faut faire le TODO, sinon, ça ne fait rien....

    Explication sur Ajax demain dans la

  10. #10
    Membre expérimenté
    Inscrit en
    Mai 2005
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 217
    Par défaut
    lol bah telle que je l'ai compris, la question etait comment appeler la servlet

    bah sinon apres dans le TODO ... ca depend de ce qu'il veut faire... moi en l'occurence je recupère un doc XML et je l'affiche avec une feuille XSL

  11. #11
    Membre expérimenté
    Inscrit en
    Mai 2005
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 217
    Par défaut
    pour ce qui est de recupere la variable envoyée en POST dans la jsp, il faut faire comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    public void doPost(HttpServletRequest req, HttpServletResponse resp)
              throws ServletException, IOException {
     
            // Récupère la variable
            String maVar = req.getParameter("var1");
     
            ...
    }

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

Discussions similaires

  1. Données venant d'ajax non postées
    Par senacle dans le forum Langage
    Réponses: 12
    Dernier message: 31/12/2008, 16h12
  2. [MooTools] Envoyer des données XML en Ajax en POST
    Par gannher dans le forum Bibliothèques & Frameworks
    Réponses: 4
    Dernier message: 17/06/2008, 14h03
  3. [AJAX] Envois de valeur en POST
    Par lermit dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/12/2007, 21h27
  4. Réponses: 1
    Dernier message: 22/01/2007, 20h33
  5. [AJAX] Methode post remplace + par espace
    Par dgedge dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 21/07/2006, 09h09

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