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 :

UL&LI javascript et XMLDOM sous IE


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Étudiant
    Inscrit en
    Juin 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2004
    Messages : 72
    Par défaut UL&LI javascript et XMLDOM sous IE
    C'est un petit souci de déclaration avec l'objet activeX XMLDOM.
    Contexte :
    Via une interface en javascript un utilisateur peut mettre à jour un ensemble de UL et LI.

    Traitement :
    une fonctionnalité doit permettre de parcourir la liste à fin de récupérer la hiérarchie de la liste dans un forma XML.

    Le problème :
    Sous FireFox l'application marche sans problème. Mais sous IE, ce dernier ne veut pas prendre en compte l'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    doc = document.implementation.createDocument(ns, root, null);
    En gros je souhait utiliser l'objet XML mais pas pour gérer un fichier existant. Le but de cet objet est de structurer la liste créé par l'utilisateur pour pouvoir la traiter facilement du coté serveur.

    Seulement voila, sous firefox je peut spécifier le premier élément du "pseudo fichier", c'est a ligne ci-dessus. Cet élément me permet de commencer l'enregistrement de la liste.
    Par contre sous IE j'arrive pas à trouver la solution espérer.

    La procédure de création de l'objet XML :

    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
     
    function createDoc(ns, root, file) {
    	// firefox
    	if (document.implementation && document.implementation.createDocument) {
    		doc = document.implementation.createDocument(ns, root, null);
    		if (file) {
    			doc.load(file);
    		}
    	}
    	// IE
    	else if (window.ActiveXObject) {
    		doc = new ActiveXObject("Microsoft.XMLDOM");
    		// l'equivalent de ' doc = document.implementation.createDocument(ns, root, null); '
    		if (file) {
    			doc.load(file);
    		}
    	}
    	else {
    		alert('Your browser can\'t handle this script');
    		doc = false;
    	}
     
    	return doc;
    }

    Merci.

  2. #2
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
                    try {
    		  xmlDoc = new ActiveXObject('Msxml2.XMLDOM');
    		} catch (e) {
    		  xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
    		}

  3. #3
    Membre confirmé
    Étudiant
    Inscrit en
    Juin 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2004
    Messages : 72
    Par défaut
    Merci pour avoir répondu si vite.

    petite précison ton bout de code je le place comme ceci ? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    else if (window.ActiveXObject) {
      try {
        xmlDoc = new ActiveXObject('Msxml2.XMLDOM');
      } catch (e) {
        xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
      }
      if (file) {
        xmlDoc.load(file);
      }
    }
    Il me prend le Microsoft.XMLDOM. Mais en ce qui concerne le premier élément je fais comment pour IE.

    Parceque sous firefox je peut définir qu'elle est ma balise (élément) root dès l'instanciation de l'objet. Ca, sa marche il n'y a aucun problème, mais pour IE je sais pas comment on fait.

  4. #4
    Membre confirmé
    Étudiant
    Inscrit en
    Juin 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2004
    Messages : 72
    Par défaut
    je reformule la question un peu plus clairement :

    Je souhaiterais savoir comment faire pour définir l'élément root d'un document XML sans passer par un fichier xml réel.

    Sous firefox la ligne suivante document.implementation.createDocument(ns, root, null) nous renvoi un objet correspondant à un document XML ayant pour l'instant un élément root vide.

    Comment puis-je arriver au même résultat sous IE.

    Merci

  5. #5
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    euh la je sais pas, regardes dans la doc msdn l'objet XMLDOM, t'auras toutes les proprietes et les methodes
    Désolé

  6. #6
    Membre confirmé
    Étudiant
    Inscrit en
    Juin 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2004
    Messages : 72
    Par défaut
    Trouvé,

    xmlDoc.load(nomFichier);
    et
    xmlDoc.loadXML(xhaineCaractere);

    ou chaineCaractere = '<ROOT></ROOT>' bref du code XML en string.

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

Discussions similaires

  1. RegEx en Javascript : résultats aléatoires sous Firefox et Opera
    Par fblanchard dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 28/04/2008, 11h02
  2. Javascript et ACCESS sous Windows XP
    Par arnaud_matard dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/11/2006, 14h33
  3. [Javascript] Menus et sous menus
    Par guiguistuder dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/06/2006, 15h52
  4. Modif JavaScript pour fonctionnement sous IE et Firefox
    Par Steph4fun dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/11/2004, 13h35

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