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 XML


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2016
    Messages : 12
    Points : 6
    Points
    6
    Par défaut javascript XML
    Bonjour à tous, voici mon fichier HTML :

    Nom : xmld.jpg
Affichages : 265
Taille : 67,1 Ko

    auquel est associé mon fichier JavaScript :

    Nom : htmld.jpg
Affichages : 253
Taille : 218,8 Ko

    qui renvoit vers un fichier XML :

    Nom : jsd.jpg
Affichages : 216
Taille : 228,3 Ko

    J'arrive donc à bien afficher les marqueurs etc, mais ce que j'aimerai faire c'est qu'en cliquant sur le lien "Voir les détails", alors dans une autre div apparaissent les détails de la randonnées du XML. Mais je n'arrive pas à lui dire que par exemple le "Voir les détails" de ce marqueur correspond à telle rando dans mon XML... vu que j'ai différentes randos à traiter. Un petit screen du HTML pour que vous compreniez mieux :

    Nom : rendu.jpg
Affichages : 223
Taille : 111,3 Ko

    En vous remerciant vraiment !

    Cordialement

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    La personne souhaitant examiner votre problème doit pouvoir copier-coller vos codes afin de les tester, c'est impossible avec des images.

    Il faut utiliser le bouton # et préciser le type du code, par exemple : code="xml".

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <action>copier-coller mes codes</action>

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2016
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Oui c'est vrai j'aurai dû insérer mon code pour qu'il soit possible de le copier-coller, je débute sur ce site ahah...
    Je voulais savoir, car même en cherchant sur internet je ne trouve pas, comment faire pour récupérer par exemple grâce à Javascript, les informations de mon XML.

    Je m'explique, je voudrais récupérer les données de mon ID=bateau par exemple quand je clique sur lien.
    Quand je clique sur un autre lien, je souhaiterai avoir les données de mon ID=voiture. Comment faire pour que chaque ID soit affecté à ce lien justement?

    Ma question est sûrement simple pour vous mais je ne vois pas comment faire...

    Imaginez-vous que j'ai juste 3 liens d'afficher sur une page web. Lorsque je clique sur "livre 1", je souhaite que dans une autre "div" , les informations dans mon XML de ID="1" soient visibles.
    Les informations sont par exemple le titre d'un livre et son auteur.

    Lorsque que je clique sur "livre 2", dans la même div que le lien 1, j'aimerai que soit affiché les informations de mon XML de ID='"2".
    Et de même pour le 3.

    Or je ne sais pas comment créer une boucle for en Javascript qui permettrait de donner une sorte de liste en récupérant tous les "ID" de mon XML. Et sur les liens "livre 1", "livre 2" et "livre 3", créer un indice qui me renverrait, quand je cliquerai sur le lien, les informations de l'ID="1" ou ID="2" ou ID="3".

    Pourriez-vous m'aider car je dois réaliser cela pour milieu de semaine prochaine et c'est à m'en tirer les cheveux...

    En vous remerciant.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Commence par faire ce qu'on te demande.
    Merci.

    Citation Envoyé par danielhagnoul Voir le message
    La personne souhaitant examiner votre problème doit pouvoir copier-coller vos codes afin de les tester, c'est impossible avec des images.

    Il faut utiliser le bouton # et préciser le type du code, par exemple : code="xml".

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <action>copier-coller mes codes</action>
    Merci de montrer un bout de code exploitable (= qu'on puisse tester).
    Dernière modification par NoSmoking ; 11/12/2016 à 10h46. Motif: Suite à fusion discussion

  5. #5
    Membre expérimenté
    Homme Profil pro
    bricoleur par les mots
    Inscrit en
    Avril 2015
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : bricoleur par les mots
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2015
    Messages : 726
    Points : 1 631
    Points
    1 631
    Par défaut
    jour

    pour manipuler un document xml il faut utiliser le DOM (document object model)

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2016
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Donc voici mon Javascript :

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    window.onload = function(){
    	var xhr = new XMLHttpRequest();
    	xhr.open("GET","data/randos.xml");
    	xhr.responseType = "document";
    	xhr.onload = affiche
    	xhr.send();
     
    };
     
    var affiche = function(ev) {
        var content_infobulle;
        var xml = ev.target.response;
        var depart_rando = xml.getElementsByTagName('rando:depart');
        var title_depart_rando = xml.getElementsByTagName('dc:title');
        var description_depart_rando = xml.getElementsByTagName('dc:description');
        var details_rando = xml.getElementsByTagName('rando:randonnee');
        for (var i = 0; i < depart_rando.length; i++) {
            var pos = depart_rando[i].getElementsByTagName('gpx:trkpt');
            var lat = pos[0].getAttribute('gpx:lat');
            var lng = pos[0].getAttribute('gpx:lon');
            var position = new google.maps.LatLng(parseFloat(lat),parseFloat(lng));
            var title = title_depart_rando[i+1].firstChild.data
            var description = description_depart_rando[i+1].firstChild.data
     
            content_infobulle = '<h2>' + title + '</h2>' + '<p>' + description + '</p>' + '<a href="javascript:void(0)" onclick = "test('+[details_rando]+')" id=' + i + '>Voir les détails</a>';
            create_marker(position,content_infobulle);
     
     
        };
        console.log(details_rando);
     
    };
     
    function test(details_rando){
        console.log("ok");
    };
     
    function create_marker(position,content_infobulle){
        var marker = new google.maps.Marker({
            position: position,
            map:map,
        });
     
        var infoBulle = new google.maps.InfoWindow({
            content: content_infobulle
        })
     
        marker.addListener('click',function(){
            infoBulle.open(map,marker);
        });
    }
     
    var map;
    function initMap() {
    	map = new google.maps.Map(document.getElementById("mapSection"),{
    		center: {lat: 46.73007179391662, lng: 3.9199219085276127},
    		zoom : 5
    	});
    	var test;
    }
    et ceci est présent sur ma page Html :

    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
    <!doctype html>
    <html lang="fr">
    <head>
    <meta charset="utf-8"/>
    <title>L2 DAOS - Randonnées</title>
    <link rel="stylesheet" type="text/css" href="styles/randos.css" />
     
    <script src="library/library.js" type="text/javascript"></script>
     
    <script src="rando.js" type="text/javascript"></script>
     
    <script async defer type="text/javascript" src="https://maps.googleapis.com/maps/api/js?callback=initMap"></script>
     
    </head>
    <body>
    <h1>Randonnées</h1>
    <h2>Identifiant utilisateur</h2>
     
    <section id="mapSection"></section>
     
    <section id="details"></section>
     
     
     
     
    </body>
    </html>
    A cela est associé mon fichier XML :

    randos.xml

    Quand je clique sur un marqueur, l'infobulle me propose de "Voir les détails", or je n'arrive pas à récupérer l"ID du XML correspondant au marqueur. Je pense que je dois créer une boucle avec des indices mais je suis un peu dans le flou étant donné que je débute...

    Ma question se porte alors sur : Comment récupérer l'ID correspondant au marqueur lorsqu'on clique sur "Voir les détails"?

    En vous remerciant.

    lordofrings33

Discussions similaires

  1. Réponses: 11
    Dernier message: 21/07/2011, 14h27
  2. [Javascript][XML]
    Par kirk80 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 30/07/2009, 12h08
  3. Problème IE PHP+Javascript+XML
    Par Bisûnûrs dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/09/2006, 09h27
  4. Problème avec XML.Clear dans un TXMLDocument
    Par Tardiff Jean-François dans le forum Composants VCL
    Réponses: 2
    Dernier message: 04/01/2005, 11h45

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