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

XML/XSL et SOAP Discussion :

Afficher un document XML en mémoire dans une page HTML


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2004
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 2
    Par défaut Afficher un document XML en mémoire dans une page HTML
    Bonjour

    Dans un script javascript, après avoir créé un objet msxml en mémoire
    var dom = new ActiveXObject("Msxml2.DOMDocument.3.0");
    je construit mon arbre xml.

    Pour faciliter le débugage je voudrais afficher son contenu dans ma page. Pour cela j'ai créé la fonction suivante :
    function traceDom(n) {
    var c="";
    for (var m = n.firstChild; m != null; m = m.nextSibling) {

    if (m.nodeType == 1) {
    c += "<b>" + m.tagName + ": </b><br>";
    }
    if (m.nodeType == 3) {
    c += ""&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " + m.data + "<br>";
    }
    c += traceDom(m);
    }
    return c;
    }

    Cette fonction semble fonctionner correctement mais je ne trouve pas comment afficher les attributs des noeuds.

    Si quelqu'un peut m'aider sur ce point, merci d'avance.

  2. #2
    Membre émérite
    Inscrit en
    Octobre 2005
    Messages
    847
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 847
    Par défaut
    je ne travaille pas bcp avec du JS, mais je pense que les attributs st de type 2

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nodeType 1(élément). 2(attribut). 3(texte)
    donc essaye :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if (m.nodeType == 1) {
    c += "<b>" + m.tagName + ": </b><br>";
    }
    if (m.nodeType == 3) {
    c += ""&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " + m.data + "<br>";
    }
    
    if (m.nodeType == 2) {
    c += ""&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " + m.data + "<br>";
    }

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2004
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 2
    Par défaut
    Merci pour cette réponse.

    J'avais implémenté cette solution mais cela ne marche pas.

    J'arrive maintenant à m'en tirer plus ou moins en procédant de la sorte


    if (m.nodeType == 1) {
    if (m.tagName == "xxxxxx")
    a = m.getAttribute("nomAttribut");
    else
    a="";
    c += "<b>" + m.tagName + " " + a + ": </b><br>";
    }

    mais au final cela fait beaucoup de tests et on est loin d'une solution générique.

Discussions similaires

  1. [HTML] Afficher du XML dans une page HTML
    Par goddet dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 15/07/2020, 22h29
  2. xml et xsl dans une page html
    Par luchoo dans le forum Balisage (X)HTML et validation W3C
    Réponses: 0
    Dernier message: 23/12/2011, 09h25
  3. Afficher le contenu d'un dossier dans une page HTML
    Par mauriceuh dans le forum Balisage (X)HTML et validation W3C
    Réponses: 23
    Dernier message: 20/02/2007, 16h57
  4. Afficher du XML dans une page HTML
    Par MrMaze dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 01/12/2005, 16h50
  5. Insérer du XML dans une page HTML
    Par Shaman LizardKing dans le forum XML/XSL et SOAP
    Réponses: 14
    Dernier message: 04/05/2005, 07h27

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