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] Ajax et Firefox


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut [AJAX] Ajax et Firefox
    Bonjour,

    Je viens de constater, sur une de mes pages, que suite à certains appels ajax sous FireFox, le curseur en haut à droite de la fenêtre (indiquant que la page est en cours de chargement) ne s'arrête plus de tourner, alors que l'appel bien fonctionné.

    Quelqu'un a-t'il une idée ?

    Merci par avance.

    Philippe

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Citation Envoyé par Pgs Voir le message
    suite à certains appels ajax
    c'est à dire ?
    Des appels récurrents (dans une boucle) ?
    Synchrones ? Asynchrones ?
    Ils sont censés être terminés ?
    Tu n'as pas d'autres traitements accédant au serveur (pré-chargement d'images ou roll-over) ?
    Bref, un peu plus d'éléments aideraient

    A+

  3. #3
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Bonjour,

    Merci pour tes questions.

    Il s'agit principalement d'appels générés par un click sur un <td></td> qui lance la mise à jour d'une valeur dans une table sql.

    L'appel est le suivant :

    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
    function item(x)
    {
    var xhr=null;
    if(window.XMLHttpRequest) xhr = new XMLHttpRequest();
    else if(window.ActiveXObject) {try {xhr = new ActiveXObject("Msxml2.XMLHTTP");} catch (e) {try {xhr = new ActiveXObject("Microsoft.XMLHTTP");} catch (e1) {xhr = null;}}}
    else {alert("Votre navigateur n\'est pas compatible avec les appels ajax");}
    if(xhr!=null)
    {
    xhr.open("POST", "item.php", true);
    xhr.onreadystatechange = function()
    {
    if(xhr.readyState == 4 && xhr.status == 200) eval(xhr.responseText);
    }
    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhr.send("x="+x);
    delete xhr;
    }
    }
    Philippe

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Un petit doute, làTu effaces l'objet xhr juste après l'appel Ajax.
    je ne vois pas bien comment tu pourrais traiter la réponses

    Que dois-tu recevoir dans le responseText (pour faire le eval() ) ?

    A+

  5. #5
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Bonjour,

    a) Pour le delete, il me semble l'avoir vu à cet endroit dans plusieurs tutos,

    b) J'utilise les appels eval dans deux cas de figure :

    - lorsque l'appel a pour seul but la maj de ma BDD, sans retour vers ma page appelante,

    - lorsque l'appel me retourne une instruction javascript (mise à jour de l'innerhtml d'un div, changement de couleur d'un <td> etc.).


    Philippe

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Salut,
    effectivement, si tu fais un delete de ton xhr après avoir envoyé la requête, Firefox va continuer à attendre la réponse qui du coup n'arrivera jamais.
    En tout cas, je n'ai jamais rencontré ce genre d'utilisation...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. [AJAX] ajax.autocompleter cache firefox
    Par damjal dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/09/2007, 17h43
  2. [AJAX] ajax IE pas FireFox..?
    Par Alex35 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 15/05/2007, 09h21
  3. [AJAX] AJAX ou Firefox ?
    Par stela86 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/04/2006, 11h32
  4. [AJAX] Ajax IE vs Firefox ?
    Par lezard dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/04/2006, 14h41
  5. [AJAX] AJAX en local (firefox /wamp)
    Par Space Cowboy dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 11/03/2006, 12h05

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