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

Bibliothèques & Frameworks Discussion :

Une couche d'abstraction de l'objet XMLHTTPRequest [Prototype]


Sujet :

Bibliothèques & Frameworks

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Octobre 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Octobre 2006
    Messages : 23
    Par défaut Une couche d'abstraction de l'objet XMLHTTPRequest
    Bonjour à tous,

    voilà, ce que je recherche ne me semble pourtant pas bien compliqué, mais malheureusement, je ne parviens pas à mettre la main dessus.

    Je développe une appli en PHP, et je voudrais utiliser AJAX pour faire une mise à jour dynamique du côté client, mais je souhaiterais faire du VRAI AJAX, c'est à dire, récupérer un flux XML et non un vulgaire responseText.

    Alors, je sais créer mon flux XML bien formé selon les principes énoncés dans la doc developpez.com, mais le truc qui m'ennuie, c'est la récupération de l'objet et son parsing dans IE ou FF. Avec firefox, j'y arrive, sous IE, ça ne marche.

    Bref, je me demandais s'il n'existait pas une "bibliotèque" qui permet d'avoir une sorte de surcouche d'abstraction de l'objet XMLHTTPRequest, de sorte que, par exemple, je donne ma requête à envoyer, et je récupère en sortie un handler. Ensuite, des méthodes et/ou fonctions me permettraient de parcourir mon arbre XML facilement sans que j'aie à me soucier du type du navigateur.

    Ça doit quand même bien exister, ça, non ?

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 657
    Par défaut
    Salut,

    Qu'est-ce que tu utilises comme fonctions non-compatible exactement ?
    De mémoire, j'utilisais childNodes/parentNode/getElementByTagName etc... (api DOM) et je n'ai pas eu de problèmes.

    En ce qui concerne les couches d'abstraction, tu peux regarder des libs comme prototype (tuto ajax avec prototype), ou d'autres, cf. la liste des frameworks.

  3. #3
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Octobre 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Octobre 2006
    Messages : 23
    Par défaut
    ce qui ne fonctionne pas, c'est tout simplement que sous Firefox, lorsque je fais requeteHTTP.responseXML, j'ai bien un objet XML que je peux parser, et avec IE, ça ne fonctionne pas le moins du monde :-(

    J'vais regarder ce que tu dis ;-)

  4. #4
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Octobre 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Octobre 2006
    Messages : 23
    Par défaut
    Mon problème est résolu. Pour résumer clairement ce qui n'allait pas, c'est tout simplement que Firefox et Internet Explorer n'utilisent pas les mêmes attributs d'objets DOM pour accéder à la partie text d'une balise xml. Donc, du coup, lorsque je faisais MyXMLDoc.documentElement.childNodes[0].childNodes[0].textContent, ça fonctionnait sous FF mais pas sous IE puisque l'attribut textContent lui est inconnu. Au final, j'ai donc rajouté un test pour vérifier sur quel navigateur l'utilisateur visite ma page, puis j'ai utilisé MyXMLDoc.documentElement.childNodes[0].childNodes[0].text sous IE et textContent sous FF.

    Et tout est rentré dans l'ordre ;-)

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

Discussions similaires

  1. Architecture d'une couche d'abstraction ?
    Par JuanLuis dans le forum Architecture
    Réponses: 3
    Dernier message: 08/08/2012, 12h06
  2. Réponses: 4
    Dernier message: 18/07/2012, 11h21
  3. Réponses: 1
    Dernier message: 15/02/2010, 20h13
  4. rafraîchir une div (Objet XMLHttpRequest)
    Par Hujii dans le forum jQuery
    Réponses: 17
    Dernier message: 05/10/2007, 15h34
  5. Réponses: 1
    Dernier message: 18/09/2007, 17h32

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