Accueil > Forum > > > > XML et interprétation IE/FF
XML et interprétation IE/FF
lundi 3 novembre 2008 à 13:59:43 |
XML et interprétation IE/FF

yyoupla
|
Hello à tous, j'ai un petit souci d'interprétation de code XML en Javascript. Voici la structure basique de mon xml : <?xml version="1.0" encoding="iso-8859-1"?> <root> <category1> <item> <name><![CDATA[name 1]]></name> <url><![CDATA[http://www.site1.com]]></url> </item> <item> <name><![CDATA[name 2]]></name> <url><![CDATA[http://www.site2.com]]></url> </item> </category1> <category2> <item> <name><![CDATA[name 1]]></name> <url><![CDATA[http://www.site1.com]]></url> </item> <item> <name><![CDATA[name 2]]></name> <url><![CDATA[http://www.site2.com]]></url> </item> </category2> </root> Note: les CDATA sont là parce que mes urls et noms vont contenir des caractères "&", "?", "<", etc. Lorsque j'essaie d'afficher, l'interprétation des nodes est différent selon IE et FF. Par exemple, ceci, dans mon js : var doc = xhr.responseXML;//le xml est appelé par XMLHttpRequest
var element = doc.getElementsByTagName('root').item(0);
alert(element.firstChild.nodeName;) Va bien donner " category1" avec IE, mais firefox m'affiche " #text" !! Si je supprime tous les sauts de ligne et indentations (tab) dans le code du xml, là les 2 navigateurs affichent bien " category1". J'ai essayé de passer le fichier XML en UTF-8, ISO... rien à faire... Là je bute, quelqu'un aurait une idée ? Merci beaucoup !
|
|
lundi 3 novembre 2008 à 14:30:25 |
Re : XML et interprétation IE/FF

nicomilville
|
Réponse acceptée !
Salut, Firefox interprette les saut de ligne comme du texte donc il créer un noeud text ou plus a chaque saut de ligne ou même a chaque tabulation, a regarder avec inspecteur DOM tout ce que tu peus faire c'est une condition pour firefox avec une boucle pour vérifier que ce ne sont pas des noeud text qu'il te donne ! a++ Si la réponse vous convient, pensez : Réponse acceptée ! 
|
|
lundi 3 novembre 2008 à 14:36:11 |
Re : XML et interprétation IE/FF

yyoupla
|
Mince alors, mais c'est un comportement normal, ça...? C'est moi ou c'est complètement c*n comme interprétation ? Tous les sites parsant du XML avec JS font pareil ?
C'est comme si FF interprétait les retours chariot dans le code html comme des balise<br>, non ?
Sinon la solution serait de réduire le XML en supprimant tous les retours chariot et indentations. Mais bonjour la lisibilité...
|
|
lundi 3 novembre 2008 à 14:45:31 |
Re : XML et interprétation IE/FF

nicomilville
|
ouai, mais si tu regarde bien le code html d'un site avec dom inspector, tu vois le nom d'une balise et toujour un ou plusieur noeud text avant le prochain avec ff c'est comme ça et c'est un comportement normal, un de ces jour, qui sais, peut être que je ferai un snippet ou une classe plus complète pour la gestion du xml multinavigateur... a++ Si la réponse vous convient, pensez : Réponse acceptée ! 
|
|
lundi 3 novembre 2008 à 15:01:43 |
Re : XML et interprétation IE/FF

bultez
|
bonjour, à priori, à mon humble avis... mettre un n° d'ordre dans une balise ne peut que poser des problèmes ! ( insolubles ou presque ) met <category> pour tous déjà. ensuite si tu veux un machin spécial par category, ajoute tu ajoutes une balise <category> <type> euh n'importe quoi </type> <item>.... après, faut voir ce que tu veux faire.... Cordialement
|
|
lundi 3 novembre 2008 à 15:05:11 |
Re : XML et interprétation IE/FF

bultez
|
et il est vrai que IE et FF ( et quid des autres navigateurs !!! ) se comportent là aussi de manière différente en général, ça ne pose pas de problème, si on utilise des choses normales ( quand je dis normales, c'est en faisant référence à <category 1> qui me semble anormal ! )
|
|
lundi 3 novembre 2008 à 15:07:24 |
Re : XML et interprétation IE/FF

yyoupla
|
@bultez : les noeuds ne s'appellent pas vraiment categorie1 et categorie2, c'était pour l'exemple. Ils ont chacun un nom différent (en l'ocurrence : applications, sites) .
|
|
lundi 3 novembre 2008 à 15:20:56 |
Re : XML et interprétation IE/FF

bultez
|
>>Ils ont chacun un nom différent ??? c'est encore pire si tu parles de la balise ! ( si tu parles d'un contenu, je comprend mieux ) doc.getElementsByTagName('root').item(0);je ne vois pas à quoi ça peut te servir... une structure xml doit ( ou alors c'est la porte ouverte à n'importe quoi et pour l'exploiter : bonjour ! ) être de la forme <root> <category> <item> <name><![CDATA[name 1]]></name> <url><![CDATA[http://www.site1.com]]></url> </item> <item> <name><![CDATA[name 2]]></name> <url><![CDATA[http://www.site2.com]]></url> </item> </category>
<category> <item>
... </root> l'utilisation de doc.getElementsByTagName('root').item(0); ne rime plus à grand chose
|
|
mardi 4 novembre 2008 à 14:11:04 |
Re : XML et interprétation IE/FF

yyoupla
|
Pour le doc.getElementsByTagName('root').item(0), j'ai en effet remplacé par d oc.getElementsByTagName('root')[0]. Sinon, ma structure est plutot comme ça : <root> <applications> <item> <name><![CDATA[name 1]]></name> <url><![CDATA[http://www.site1.com]]></url> </item> <item> <name><![CDATA[name 2]]></name> <url><![CDATA[http://www.site2.com]]></url> </item> </applications> <sites> <item> <name><![CDATA[name 3]]></name> <url><![CDATA[http://www.site3.com]]></url> </item> <item> <name><![CDATA[name 4]]></name> <url><![CDATA[http://www.site4.com]]></url> </item> </sites> </root>
Le but est de récupérer 2 listes de liens distinctes. Peut-etre devrais-je faire autrement et utiliser <category name="applications">... ?
|
|
mardi 4 novembre 2008 à 14:35:19 |
Re : XML et interprétation IE/FF

bultez
|
ou ajouter <nom>application</nom> derrière les <category> ch'tiot exemple : <?xml version="1.0" encoding="iso-8859-1"?> <root> <category> <item> <name><![CDATA[name 1]]></name> <url><![CDATA[http://www.site1.com]]></url> </item> <item> <name><![CDATA[name 2]]></name> <url><![CDATA[http://www.site2.com]]></url> </item> </category> <category> <item> <name><![CDATA[name 3]]></name> <url><![CDATA[http://www.site3.com]]></url> </item> <item> <name><![CDATA[name 4]]></name> <url><![CDATA[http://www.site4.com]]></url> </item> </category> </root>
|
<html> <head> </head> <script type="text/javascript"> var xmlD; function xmlFin() // Xml chargé { var tmp; for ( var c=0; c<xmlD.getElementsByTagName('category').length;c++ ) { for ( var i=0; i<xmlD.getElementsByTagName('category')[c].getElementsByTagName('item').length; i++ ) { tmp=xmlD.getElementsByTagName('category')[c]. getElementsByTagName('item')[i]; alert ( tmp.getElementsByTagName('name')[0].firstChild.nodeValue+" = "+ tmp.getElementsByTagName('url')[0].firstChild.nodeValue ); } } // on pourrait faire :
for ( var c=0; c<xmlD.getElementsByTagName('name').length;c++ ) { alert ( xmlD.getElementsByTagName('name')[c].firstChild.nodeValue+" = "+ xmlD.getElementsByTagName('url')[c].firstChild.nodeValue ); } }
// initialisation if ( document.implementation && document.implementation.createDocument ) { xmlD = document.implementation.createDocument("", "", null); xmlD.onload = function() { xmlFin(); } } else { xmlD = new ActiveXObject("Microsoft.XMLDOM"); xmlD.onreadystatechange = function () { if (xmlD.readyState == 4) xmlFin(); } } xmlD.load("exemple.xml"); </script> </body> </html>
|
|
|
Cette discussion est classée dans : code, ie, xml, ff, interprétation
Répondre à ce message
Sujets en rapport avec ce message
Gestion des popup sous IE et FF [ par CleFac ]
Bonjour, j'aimerai savoir s'il est possible d'ouvrir plusieurs popups. laissez l'utilisateur les dimensionner et les positionner ; pour ensuite les ou
Problème Popups IE et FF [ par snip74 ]
Bonjour all, voila j'ai une page que j'ai créer ou j'ai mis se code: [code=autre]<form action="http://www.tchat-fusion.org/chat/chat.php" method="pos
Erreur dans mon code pour afficher une liste d'un fichier XML,HELP!!!!!!!!!!!!!!!!! [ par devchat1987 ]
Bonjour, svp,j'arrive pas a faire fonctionner mon code,je veux affiche une liste des noms d'une fichier xml dans un div (dans une liste ordonnée ol).
Jquery ne fonctionne plus sous Internet Explorer [ par jonathandaros ]
Bonjour, Je ne sais pas vraiment comment expliquer mes ennuis, et franchement ça commence à bien faire ... j'utilise Jquery et le plugin easing pou
Tirage aléatoire de données dans fichier xml [ par math11 ]
Bonjour, je suis actuellement a la recherche d'un moyen de tirer aléatoirement une donnée dans un fichier xml. Je connais la méthode de JavaScript d
doublons dans xml [ par math11 ]
Bonjour, J'aurais voulu savoir s'il y avait la possibilité en "JQery" de n'afficher qu'une seule fois un élément, afin de générer un menu sur l'éléme
[XML/SVG] zoom sur plusieurs éléments [ par BARIS69330 ]
Bonjour, je bosse actuellement sur du svg et il me faut faire un zoom sur plusieurs evenements quand je passe la souris dessus grâce aux fonctions onm
Code Javascript qui fonctionne sous FF 3.0.5 mais plus sous 3.5.5 ... [ par meluesine ]
Bonjour à tous, J'ai un souci dont je n'ai pas trouvé la solution, ni en cherchant sur le web en général ni en cherchant sur ce forum: j'ai installé
prob de lecture appartie d'un fichir xml [ par abir01 ]
voila mon code XML: [code=xml] Current Conditions: Fair, 54 F Forecast: Tue - Mostly Sunny. High: 78 Low: 51
Récupération d'un ID sous IE [ par bull955 ]
Bonjour, J'écris une procédure permettant de générer une zone répétée dans une iframe, avec visualisation et suppression par article ajouté. Tout fo
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|