2010-05-20 4 views
0

Mon backend PHP envoie une réponse XML au client (ajax):Jquery .text() ne semble pas travailler sur XML dans IE7

<response> 
    <code>0</code> 
    <message>OK</message> 
</response> 

dans le javascript que je suis en train d'obtenir la valeur CODE de cette façon : var errorCode = $ ('code', xml) .text();

puis en fonction de la valeur errorCode, je procède au traitement.

Cela fonctionne très bien dans tous les navigateurs que j'ai testés sauf IE7. Au lieu de la valeur CODE - il me donne la chaîne vide. Le problème n'est pas dans la valeur 0, parce que j'ai essayé d'utiliser 5 comme code par exemple - le résultat était le même.

Toutes les idées, parce que je suis coincé avec:. ((

Merci

+0

Bienvenue sur stackoverflow! –

Répondre

1

après quelques Au moment de l'enquête, j'ai trouvé que j'étais assez stupide pour poster une question ici. Le problème était que j'ai simplement oublié d'envoyer les en-têtes appropriés dans mon contrôleur ajax. Après avoir ajouté header("Content-Type: text/xml; charset=utf-8"); , il me semble fonctionner correctement dans IE7.

Je vais tester tous les navigateurs de repos, mais comme les autres navigateurs traitaient correctement même simplement le texte, alors avec le bon XML - il ne devrait y avoir aucun problème.

Merci les gars pour les efforts pour m'aider.

0

Avez-vous essayé .val() ou .html()

De plus, je crois .ajax() function de jQuery peut analyser XML pour vous?.
EDIT: En fait, je suppose que vous utilisez déjà quelque chose comme ça, peu importe

+0

ni val(), ni html() fonctionnent, ont tout essayé. comment .ajax() est en train d'analyser le XML? il envoie la requête au serveur et lance le post-traitement en cas de succès et d'erreur, mais ce n'est pas l'analyse, suis-je en train de me tromper? – Volder

+0

Une solution de contournement peut utiliser des méthodes DOM simples avec le responseXML renvoyé par l'appel ajax. Exemple: http://www.ajaxprojects.com/ajax/tutorialdetails.php?itemid=382#start. Mais je ne peux pas penser à d'autres solutions sans voir votre code. – GeReV

Questions connexes