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 :

Javascript + lecture XML


Sujet :

JavaScript

  1. #1
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 230
    Points
    20 230
    Par défaut Javascript + lecture XML
    Bonjour à tous,

    j'ai pour objectif de lire un fichier xml (de news) pour ensuite via javascript en tirer le titre ainsi que le lien des différentes news.

    Etant plutôt novice en JS et Xml j'ai farfouillé un peu sur le net et , je suis arrivé au résultat suivant :

    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
    var x = xmlDoc.getElementsByTagName('item');
    	var newEl = document.createElement('TABLE');
    	var tmp = document.createElement('TBODY');
    	newEl.appendChild(tmp);
    	var row = document.createElement('TR');
     
    	for (i=0;i<x.length;i++)
    	{
    		var row = document.createElement('TR');
    		if (x[i].childNodes[1].nodeType != 1) continue;
    		var container = document.createElement('TD');
    		var titre = document.createTextNode(x[i].childNodes[1].firstChild.nodeValue);
    		container.appendChild(titre);
    		row.appendChild(container);
     
    		if (x[i].childNodes[1].nodeType != 1) continue;
    		var container = document.createElement('TD');
    		var lien = document.createTextNode(x[i].childNodes[2].firstChild.nodeValue);
    		container.appendChild(lien);
    		row.appendChild(container);
     
    		tmp.appendChild(row);
    	}
    Je vous passe la partie ouverture du fichier xml.
    Bref j'obtiens sur ma page web une colonne avec les titres et une colonne avec les url.

    J'aimerais faire des lienscliquable sur mes titre , en gros au lieu d'avoir :
    Mon titre 1 Mon url 1

    Avoir :
    <a href="Mon url1" > Mon titre 1 </a>

    Mais je suis pas fichu d'arriver à ce résultat car titre et lien semble être des objets et je ne peut donc pas les concaténer dans une chaine du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.write("<a href='" + lien + "'>" + titre + "</a>");
    Si quelqu'un à quelques pistes à m'apporter

    Merci

  2. #2
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    Voici le code pour créer un lien dans, par exemple, une div:
    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
     
    <html>
    <head>
    <script language="javascript">
    function addlien()
    {
     
    var la_div = document.getElementById("ma_div");
     
    var lien = document.createElement("a");
    la_div.appendChild(lien);
     
    lien.setAttribute("href","une_page.html");
     
    var titre = document.createTextNode("titre");
    lien.appendChild(titre);
     
    }
    </script>
    </head>
    <body>
     
    <a href="javascript:addlien();">Click</a>
    <div id="ma_div">
    </div>
    </body>
    </html>
    Adapté à ton problème, cela devrait donner quelque chose du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    for (i=0;i<x.length;i++)
    {
      var row = document.createElement('TR');
      if (x[i].childNodes[1].nodeType != 1) continue;
      var container = document.createElement('TD');
      row.appendChild(container);
      var lien = document.createElement("a");
      container.appendChild(lien);
      lien.setAttribute("href",x[i].childNodes[2].firstChild.nodeValue);
      var titre = document.createTextNode(x[i].childNodes[1].firstChild.nodeValue);
      lien.appendChild(titre);
    }

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 230
    Points
    20 230
    Par défaut
    Merci beaucoup
    C'était finalement pas très compliqué

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

Discussions similaires

  1. lecture XML avec javascript
    Par stomerfull dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 18/09/2012, 16h20
  2. [javascript et xml]
    Par Lady_jade dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/05/2006, 10h00
  3. [XML] Utilisateurs connectés Lecture XML
    Par Polaire76 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 23/01/2006, 12h05
  4. [C#] [WinForms] Lecture XML
    Par stailer dans le forum Windows Forms
    Réponses: 2
    Dernier message: 05/10/2004, 14h42
  5. [Débutant] Lecture xml SAX
    Par Ekros dans le forum APIs
    Réponses: 6
    Dernier message: 21/06/2004, 15h14

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