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 :

[DOM] Chargement fichier xml


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 68
    Points : 34
    Points
    34
    Par défaut [DOM] Chargement fichier xml
    Bonjour,

    J'ai un petit problème avec l'utilisation du DOM en javascript

    Je viens de loader un fichier XML (en js) et lorsque j'essaye de le lire il m'affiche une erreur

    Mon code js :

    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
     
    function INIT() {};
     
    var xmlDoc;
     
    INIT.importDesign = function() {
     
    	if (document.implementation && document.implementation.createDocument) {
    		xmlDoc = document.implementation.createDocument("", "", null);
    		xmlDoc.onload = INIT.createDesign();
    	} else if (window.ActiveXObject) {
    		xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    		xmlDoc.onreadystatechange = function () {
    			if (xmlDoc.readyState == 4) {
    				INIT.createDesign();
    			}
    		};
     	}
    	else {
    		alert('Your browser can\'t handle this script');
    		return;
    	}
    	xmlDoc.load("fenetre.xml");
    }
     
    INIT.createDesign = function() {
     
    	var x = xmlDoc.getElementsByTagName('fenetre')[0];
     
    	alert(x.childNodes.length); // l'erreur vient d'ici
     
    }
     
    window.onload = INIT.importDesign;
    Le fichier XML (J'avais mit au début une déclaration et le DTD que j'ai fait mais je l'ai enlever de peur que ca pose problème lors du chargement du fichier XML) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <fenetre gridx="3" gridy="5">
    	<case gx="1" gy="1">Peche</case>
    	<case gx="2" gy="1">Poire</case>
    	<case gx="3" gy="1">Pomme</case>
    	<case gx="1" gy="2" gh="4">Prune</case>
    	<case gx="2" gy="2">Fraise</case>
    	<case gx="3" gy="2">Cerise</case>
    	<case gx="2" gy="3" gw="2" gh="3">Ananas</case>
    </fenetre>

    Donc l'erreur vient de lorsque j'essaye d'afficher le nombre de "case" dans le "fenetre".

    Il me dit : 'x has no properties'

    J'ai essayé toute les possibilité et lorsque je fait alert(x.length); en enlevant le [0] de la ligne au dessus, il m'affiche qu'il y a zéro "fenetre".

    Donc je sais pas si cela vient d'un problème lors du load du fichier xml ou bien une mauvaise manipulation.

    Je veux juste pouvoir manipuler mon fichier xml donc si vous savez m'aider.

    Merci d'avance

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 14
    Points : 17
    Points
    17
    Par défaut
    Bonjour

    As-tu essayé quelque chose du style

    var x = xmlDoc.getElementsByTagName('//case') ;
    alert(x.length);

    normalement si mes souvenirs sont bons tu fais une recherche récursive sur case
    cela retourne une collection donc x.length te retourne le nombre de noeuds case

    à vérifier

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 89
    Points : 102
    Points
    102
    Par défaut
    Salut,

    Si je ne me trompe pas, tu as sauté quelques étapes. Par exemple, il me semble qu'il faudrait quelque part "xmlDoc.responseXml", sinon tu ne peux récupérer le xml...

    Je me trompe peut-être...

Discussions similaires

  1. [FLASH MX2004] Pb chargement fichier xml
    Par didier974 dans le forum Flash
    Réponses: 13
    Dernier message: 21/09/2006, 14h25
  2. Chargement fichier XML
    Par guy777 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 25/07/2006, 10h02
  3. [C#] Problème chargement fichier xml dans treeview
    Par LE NEINDRE dans le forum Windows Forms
    Réponses: 4
    Dernier message: 23/06/2006, 14h10
  4. [C#2.0]DatagridView + Chargement fichier XML
    Par chnew dans le forum Windows Forms
    Réponses: 2
    Dernier message: 10/04/2006, 12h35
  5. [DOM] Serialiser arbre DOM en fichier XML
    Par Overflow64 dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 20/10/2004, 11h53

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