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

AJAX Discussion :

[AJAX] Fonction abort() pour une XHR


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Par défaut [AJAX] Fonction abort() pour une XHR
    Bonjour,

    Je commence dans le développement web et me retrouve bloquée. J'en appelle donc à votre aide :p

    Je cherche à créer deux boutons, le premier servant à lancer l'exécution d'une page (qui boucle indéfiniment) de manière asynchrone, et le second servant à stopper l'exécution de cette page.

    Voilà la partie de mon code concernée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ...
    var xhr = new XMLHttpRequest();
    xhr.open("GET", "mapage");
    </script>
    <p>
      <input type="button" value="run" onclick="javascript: xhr.send(null)" />
      <input type="button" value="stop" onclick="javascript: xhr.abort()"/>
    </p>
    ...
    EDIT: je précise un peu le comportement de ma page:
    Lorsque je clique sur le bouton run, "mapage" est bien exécutée, mais lorsque je clique sur le bouton stop, l'exécution de "mapage" n'est pas stoppée.

    Où ai-je fauté?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Tu devrais étre plus clair, et poster le javascript complet !
    En effet je craint que tu ne confonde la création d'une ressource AJAX et son arret par abort, et l'arret de la fonction AJAX elle même
    A te lire
    Christele

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Par défaut
    Bonjour,

    Merci pour ta vive réponse!

    Voici le contenu de ma page HTML:

    Code html : 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
    <html>
      <head>
        <title>Rotor</title>
      </head>
      <body>
    <SCRIPT type="text/javascript" src="jquery.js"></SCRIPT>
    <SCRIPT language="Javascript">
    var xhr = new XMLHttpRequest();
    xhr.open('GET', 'mapage');
     
    </SCRIPT>
        <input type="button" name="bouton1" id="bouton1" value="run" onClick="javascript: xhr.send(null)">
        <input type="button" name="bouton2" value="stop" onClick="javascript: xhr.abort()"-->
     
     </body>
     
    </html>

    Merci de ton aide.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Oui Oui je me doutait de cela, tu fait RUN paarfait la page est appelée par AJAX, mais le ABORT ne sert a rien car l'action AJAX est déja terminée depuis longtemps ... et AJAX n'a pas le pouvoir de modifier ton HTML !
    Tu comprends cela

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Par défaut
    Donc la fonction abort() ne fait qu'arrêter l'action AJAX (qui est ici de lancer "mapage"). Comme "mapage" est déjà lancée lorsque j'appuie sur le bouton stop, la fonction abort() ne sert à rien ici.

    Mais comment puis-je arriver à mes fins?

  6. #6
    Invité
    Invité(e)
    Par défaut
    Ta page appelée par AJAX tu l'a envoyée je pense dans un DIV ou aute partie de ta page principale
    Alors ton ABORT doit appeler un bout de javascript qui vide cette partie
    par exemple disons que ta page est dans un <DIV ID=truc >
    le script serait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('truc').innerHTML='';

Discussions similaires

  1. fonction mail() pour une adresse mail invalide
    Par Royade dans le forum Langage
    Réponses: 0
    Dernier message: 28/05/2012, 16h54
  2. Fonction Min pour une plage évolutive
    Par MelkInarian dans le forum Excel
    Réponses: 2
    Dernier message: 07/06/2010, 12h19
  3. Réponses: 1
    Dernier message: 28/07/2009, 13h22
  4. fonctions "quitter" pour une fenetre
    Par paihpaihtte dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 14/03/2007, 21h39
  5. Pb fonction max pour une cellule
    Par fmris dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 22/11/2006, 15h12

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