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] http.readyState différent de 4 ?


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Par défaut [AJAX] http.readyState différent de 4 ?
    Bonjour à tous,

    J'ai un problème avec l'état du retour serveur, il est constant à 1...je ne comprend pas pourquoi.

    Voici mon script :
    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
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
     
    <script language="javascript">
     
    var http; // Notre objet XMLHttpRequest
    var affichage=0;
    var passage;
     
    function createRequestObject()
    {
            var http;
        if(window.XMLHttpRequest)
        { // Mozilla, Safari, ...
            http = new XMLHttpRequest();
        }
        else if(window.ActiveXObject)
        { // Internet Explorer
            http = new ActiveXObject("Microsoft.XMLHTTP");
        }
        else { 
    	// XMLHttpRequest non supporté par le navigateur
            alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
            return;
        }
        return http;
    }
     
    function gestionClic1(id_news_clique)
    {
     
        if(affichage==0)
        {
     
           if(passage!=1)
           {
             var newsDIV = document.createElement( 'div' );	
     
             newsDIV.setAttribute("id", "news");
    	 var elementId = 'lien_news_'+id_news_clique;
             document.getElementById(elementId).appendChild(newsDIV);
    	 passage=1;
           }
     
     
     
           document.getElementById("news").innerHTML = '<em>Chargement...</em>';
           http = createRequestObject();
     
           var chemin_open = './scripts/news-ajax.php?id='+id_news_clique;
     
           http.open('get',chemin_open , true);
           http.onreadystatechange = handleAJAXReturn1();
     
           http.send(null);
     
           document.getElementById('news').style.visibility="visible";  
     
           affichage=1;
        }
        else if(affichage==1)
        {
           document.getElementById('news').innerHTML = '';
           document.getElementById('news').style.visibility="hidden";
     
           affichage=0;
        }
    }
     
    function handleAJAXReturn1()
    {
        alert(http.readyState);
        if(http.readyState == 4)
        {
            if(http.status == 200)
            {
                document.getElementById('news').innerHTML = http.responseText;
            }
            else
            {
                document.getElementById('news').innerHTML = "<strong>N/A</strong>";
            }
        }
    }
    </script>
    Merci de votre aide et vos réponses !!

  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
    Citation Envoyé par samtheh Voir le message
    Bonjour à tous,

    J'ai un problème avec l'état du retour serveur, il est constant à 1...je ne comprend pas pourquoi.
    Tu as essayé de taper l'adresse à la main dans la barre de navigation?

    Tu utilises quel navigateur pour tes tests?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Par défaut
    Oui cela fonctionne si je tape l'adresse directement.
    J'utilise firefox.

    Le script est correct ?

  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 samtheh Voir le message
    Le script est correct ?
    Il a l'air correct.

    Essaye d'intervertir l'affectation de onreadystatechange et le open. A part ça, je ne vois pas pourquoi il ne voudrait pas marcher.

    Essaye un escape de l,Argument ajouté dans l'url.

    Vérifie l'URL construite avec un alert au bon endroit.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 473
    Par défaut
    L'intervertion me renvoit 0 pour l'etat du retour serveur.

    L'alert de l'url fait apparaitre la bonne adresse.

    Escape ? Je ne comprend pas ?

  6. #6
    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 samtheh Voir le message
    L'intervertion me renvoit 0 pour l'etat du retour serveur.
    Et enlevant l'alert de la fonction de callback?
    Citation Envoyé par samtheh Voir le message
    Escape ? Je ne comprend pas ?
    http://www.w3schools.com/jsref/jsref_escape.asp

Discussions similaires

  1. Envoie de requêtes HTTP avec différentes IP
    Par tupac25 dans le forum Développement Web en Java
    Réponses: 1
    Dernier message: 02/05/2011, 09h35
  2. requete ajax https
    Par calitom dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 22/01/2009, 17h30
  3. Réponses: 7
    Dernier message: 30/01/2008, 18h24
  4. [AJAX] AJAX+Firefox : readyState ne dépasse pas le 1
    Par TheRedLed dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/04/2007, 13h42
  5. [AJAX] Lenteur AJAX HTTP
    Par chamadi dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/09/2006, 16h35

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