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] Incompatibilité AJAX && IE


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [AJAX] Incompatibilité AJAX && IE
    Bonjour à tous,
    c'est ici mon premier post, je le poste sur plusieurs forums au cas où (Ne vous vexez pas hein )
    Donc voilà, une petite requete trouvée dans un tuto, le code :
    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
    function HTTPRequestObject ()
    {
    var xhr_object = false;
     
    if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest(); // Firefox et autres
    else
    if(window.ActiveXObject) // Internet Explorer
    {
    try {xhr_object = new ActiveXObject("Msxml2.XMLHTTP");}
    catch (e) {xhr_object = new ActiveXObject("Microsoft.XMLHTTP");}
    }
    else // XMLHttpRequest non supporté par le navigateur
    {
    alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    xhr_object = false;
    }
    return xhr_object;
    }
    function getFormData(form)
    {
    var data1 = "";
    var form = document.getElementById(form);
    var elements = form.elements;
    for(var i=0; i<form.length; i++)
    {
    data1 += elements[i].name + "=" +escape(elements[i].value);
    if((i+1)<form.length)
    {
    data1+="&";
    }
    }
    return data1;
    }
    function ajax(xhr_url,divPos,method,data2)
    {
    var data = "";
    if(data2 != null)
    {
    if(method=="GET")
    {
    data=data2;
    method="POST";
    }
    else
    {
    data = getFormData(data2);
    }
    }
    var xhr = HTTPRequestObject();
    // On défini ce qu'on va faire quand on aura la réponse
    xhr.onreadystatechange = function()
    {
    // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    if (document.getElementById(divPos) && xhr)
    {
    if (xhr.readyState == 4)
    {
    if (xhr.status == 200 || xhr.status == 304)
    {
    document.getElementById(divPos).innerHTML = xhr.responseText;
    }
    else
    {
    document.getElementById(divPos).innerHTML = 'Error ' + xhr.status + ' : ' + xhr.statusText;
    }
    }
    else
    {
    document.getElementById(divPos).innerHTML = 'Chargement en cours... veuillez patienter... .. .' + xhr.readyState;
    }
    }
     
    }
     
    // Ici on va voir comment faire du post
    xhr.open("POST",xhr_url,true);
    // ne pas oublier ça pour le post
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    // ne pas oublier de poster les arguments
    xhr.send(data);
    return false;
    }
    Et la page :
    http://88.191.24.26/~monteleu/test/


    Resultat : rien ne bouge sous IE j'ai constamment
    Chargement en cours... veuillez patienter... .. .3
    AUtrement dit : le fichier n'est jamais completement chargé...

    Résolu : IE ne supporte pas le Innerhtml et getelementbyid pour un <p>

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Je me permets un petit Up
    Merci de prêter attention à ce message

  3. #3
    Membre expérimenté Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Points : 1 388
    Points
    1 388
    Par défaut
    Sous ie ya marqué erreur inconnue a la ligne 61

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Ce qui correspond sans saut de ligne à ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById(divPos).innerHTML = xhr.responseText;
    Et là je comprends pas où est l'erreur :p

    Je viens d'y penser mais le fait que ce soit un <p> qui possède le changement et non un div changerait-il les choses ?

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

Discussions similaires

  1. [AJAX] Incompatibilité avec IE (données non mis à jour)
    Par WeDgEMasTeR dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 23/05/2007, 19h46
  2. [AJAX] Source Ajax
    Par Hesiode dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 15/03/2006, 21h04
  3. [AJAX] Affichage ajax
    Par matique dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 11/03/2006, 19h28
  4. [AJAX] Utilisation AJAX
    Par topolino dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/02/2006, 09h30
  5. [AJAX] Utilisation AJAX
    Par illegalsene dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 24/01/2006, 11h55

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