Accueil > Forum > > > > Condition pour parser du xml
Condition pour parser du xml
mardi 18 septembre 2007 à 12:05:24 |
Condition pour parser du xml

raskar97one
|
Bonjour à tous, Je suis à mi chemin entre débutant et intermédiaire en JAVSCRIPT. :D J'ai un fichier xml généré avec dom qui ressemble à ça: <zone> <id></id> <nom></nom> <pays> <id> <nom></nom> <image> </pays> <pays> <id> <nom></nom> <image> </pays> <pays> <id> <nom></nom> <image> </pays> </zone> ETC..avec d'autre zone qui contienent plusieurs pays. Ainsi j'ai une fonction qui prend en paramètre l'ID d'une zone spécifique. Je voudrais pouvoir récupéré les infos de cette zone (c'est à dire son nom) mais aussi toute les infos de ses pays (id, nom, image) et seulement pour cette zone :euh: Quelqu'un pourrais m'aider ? :-°
|
|
mardi 18 septembre 2007 à 13:01:29 |
Re : Condition pour parser du xml

bultez
|
bonjour,
un ch'tit exemple ( uniquement avec syntaxe IE, peu de choses à faire pour la compatibilité )
test.xml
<?xml version="1.0" encoding="ISO-8859-1"?> <rep> <qui> <prenom>gérard</prenom> <nom>Menvussa</nom> <tel>0123456789</tel> </qui> <qui> <prenom>gédéon</prenom> <nom>Teuzeumani</nom> <tel>1234567890</tel> </qui> </rep>
test.htm
<script type="text/javascript"> var xml=new ActiveXObject("Microsoft.XMLDOM"); xml.async=false; xml.load("test.xml"); var r=xml.getElementsByTagName("rep")[0]; for ( var q=0;q<r.getElementsByTagName("qui").length;q++ ) { var n=r.getElementsByTagName("qui")[q]; alert(n.getElementsByTagName("nom")[0].firstChild.data); } </script>
Cordialement Bul [mon Site] [M'écrire]
En général, c'est absurde de généraliser.
|
|
mardi 18 septembre 2007 à 13:09:52 |
Re : Condition pour parser du xml

bultez
|
...et pour FF : var xml= document.implementation.createDocument("", "", null); c'est tout.
Cordialement Bul [mon Site] [M'écrire]
En général, c'est absurde de généraliser.
|
|
mardi 18 septembre 2007 à 17:42:31 |
Re : Condition pour parser du xml

raskar97one
|
Euh j'ai essayé mais ça marche pas :( Comment j'utilise var xml= document.implementation.createDocument("", "", null); ?
|
|
mardi 18 septembre 2007 à 18:45:29 |
Re : Condition pour parser du xml

AlexN
|
si ton xml est contenu dans une variable javascript, remplaces xml.load("test.xml"); par xml.loadXML(XMLString);
Cette solution n'est valable qu'avec ce boulet d'ie. Pour FF
var parser=new DOMParser(); var doc=parser.parseFromString(text,"text/xml");
sinon lis ça : [ Lien ]
|
|
mercredi 19 septembre 2007 à 08:48:29 |
Re : Condition pour parser du xml

bultez
|
le boulet ce ne serait pas toi ? ni IE, ni FF en tout cas, puisque ça baigne pour les 2 !
<script type="text/javascript"> var xml; if ( document.implementation.createDocument ) xml=document.implementation.createDocument("", "", null); else xml=new ActiveXObject("Microsoft.XMLDOM"); xml.async=false; xml.load("test.xml"); var r=xml.getElementsByTagName("rep")[0]; for ( var q=0;q<r.getElementsByTagName("qui").length;q++ ) { var n=r.getElementsByTagName("qui")[q]; alert(n.getElementsByTagName("nom")[0].firstChild.data); } </script>
|
|
mercredi 19 septembre 2007 à 10:58:42 |
Re : Condition pour parser du xml

raskar97one
|
Ok, mais là ça marche bien avec Firefox mais pas du tout avec IE. J'ai testé pour mettre seulement l'initialisation de IE et ça marche pas (que ce soit IE 6 ou IE 7) 
|
|
mercredi 19 septembre 2007 à 11:11:38 |
Re : Condition pour parser du xml

bultez
|
je ne sais pas ce que tu fais... l'exemple baigne au moins pour IE7 et FF 2.0.0.6 ( enfin... chez moi !?! ) tu ne dois pas reprendre "tel quel".
Cordialement Bul [mon Site] [M'écrire]
En général, c'est absurde de généraliser.
|
|
mercredi 19 septembre 2007 à 11:16:14 |
Re : Condition pour parser du xml

raskar97one
|
function handleServerResponse() { if ( document.implementation.createDocument ){ xml = document.implementation.createDocument("", "", null); }else{ xml = new ActiveXObject("Microsoft.XMLDOM"); } xml.async=false; xml.load("zone.xml"); var zones = xml.getElementsByTagName("zones")[0]; for ( var i=0 ; i<zones.getElementsByTagName("zone").length ; i++ ) { var zone = zones.getElementsByTagName("zone")[i]; var zone_id = zone.getElementsByTagName("id")[0].firstChild.data; if(zone_id == 4) { var test =""; for ( var k=0 ; k<zone.getElementsByTagName("network").length ; ++k ) { var network = zone.getElementsByTagName("network")[k]; var network_id = network.getElementsByTagName("id")[0].firstChild.data; var network_name = network.getElementsByTagName("name")[0].firstChild.data; var network_pic = network.getElementsByTagName("picture")[0].firstChild.data; test += ("Pour la zone :" + zone_id +"-----ID:" + network_id + "----NAME:" + network_name + "----PICTURE:" + network_pic +"<br />"); document.getElementById('wlogon').innerHTML = test; } } } }
Voila ma fonction au complet qui est appellé mar un onMouseOver
|
|
mercredi 19 septembre 2007 à 11:44:31 |
Re : Condition pour parser du xml

bultez
|
ah... si on avait le xml ( un extrait ) ? mais avant : var zone_id = zone.getElementsByTagName("id")[0].firstChild.data; if(zone_id == 4) zone_id ce doit être du string. donc if(zone_id == '4') ça irait pas mieux ?
|
|
Cette discussion est classée dans : xml, zone, parser, pays, condition
Répondre à ce message
Sujets en rapport avec ce message
Parser XML pour tranformation XSL sous firefox ? [ par rom3ro ]
Bonjour, Je souhaiterais savoir s'il était possible de pouvoir transformer des documents XML avec du XSL sous firefox, comme IE permet de le faire
reponseXML + parser en javascript [ par rhum07 ]
Bonjour.J'ai créé un petit moteur ajax en mode post. Le résultat retourné est du XML.Peut-on, en javascript parser ce xml comme en php avec la fonctio
Parser du XML [ par Websebdo ]
Bonjour,J'ai chercher sur les fofos mais j'avoue ne pas avoir trouvé la réponse...Je cherche a parser un fichier xml en js :ejs_scroll_message = new
Impossible de parser un flux XML sous IE7 [ par rhan_659 ]
Bonjourje parse un flux XML, avec FF3 et I.E6 pas de souci mais avec IE 7 ça marche pasvoila le fluxazertyuiop:[AAA]:[BBB]:[CCC]<br
Probleme pour parser du xml avec I.E [ par rhan_659 ]
Bonjourj'ai fais un code pour parser un flux XML (obtenue via de l'ajax), ça marche nickel sous Firefox mais i.e ne veux rien savoirvoila le codevar e
récuperer les données d'un fichier XML dans une zone de saisie [ par fabricioliking ]
bonjoursVoila j'ai besoin d'un tout petit coup de patte, je récupére les données d'un fichier xml, j'arrive à les afficher par le bied d' "alert" mais
Problème Parser XML Ajax sous Safari/Chrome [ par ju0123456789 ]
Bonjour, Je rencontre un problème de parser XML dans une requete Ajax sous le navigateur Safari (Idem sous chrome). Je m'explique, la requete Ajax (
JQery sélectionner un élément en fonction d'un autre [ par math11 ]
Bonjour, J'utilise actuellement un fonction Jqery qui me sélectionne un élément dans un fichier xml, j'aimerais aller plus loin, en voulant afficher
Parser un XML en javascript (=xml to array) [ par Logan ]
Bonjour,Je suis en train de realiser un petit chat en ajax, et je dois donc parser un xml pour en recuperer des valeurs en javascript...je vous montre
Manipulation d'un fichier xml chargé avec jQuery [ par gillespockpock ]
Bonjour, j'ai un problème, je n'arrive pas à manipuler le DOM d'un document XML que je charge avec jQuery; voici le code du chargement: (l'url du fich
Livres en rapport
|
Derniers Blogs
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 REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Forum
UTILISER UN .JSUTILISER UN .JS par zaikoe
Cliquez pour lire la suite par zaikoe
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
|