J'ai ce fichier geojson :

{
   "type":"FeatureCollection",
   "features":[
      {
         "type":"Feature",
         "properties":{
            "Adresse":"### St-Roch",
            "Type":"famille"
         },
         "geometry":{
            "type":"Point",
            "coordinates":[
               -73.6291292309761,
               45.52982413033413
            ]
         }
      },
      {
         "type":"Feature",
         "properties":{
            "Adresse":"### St-Roch",
            "Type":"organisme"
         },
         "geometry":{
            "type":"Point",
            "coordinates":[
               -73.62943768501282,
               45.531770729329985
            ]
         }
      }
   ]
}

Voici (une partie de) mon script :

        var request = new XMLHttpRequest();
        request.open("GET", "photoParcEx.geojson", false);
        request.send(null);
        var dataJSON = JSON.parse(request.responseText);
        console.log(dataJSON.features.properties.Adresse);
        
        photoParcEx.addTo(maCarte).on('click', function () {
            sidebar.toggle();
            document.getElementById("sidebar").innerHTML = "Type : " + dataJSON.Adresse;
        });

J'essaie d'envoyer la clé "Adresse" à un code HTML interne, mais je continue à être indéfini. Même chose lorsque j'essaie d'imprimer la valeur avec le journal de la console.

Qu'est-ce que je fais mal ?

1
YannieB 12 nov. 2020 à 22:50

1 réponse

Meilleure réponse

Cela a fait l'affaire:

photoParcEx.on('click', function (e) {
      sidebar.show();
            console.log(e.layer.feature.properties.Type);
            var photoDesc = document.getElementById("photoDesc");
            //$("sidebar").innerHTML = "Type : " + e.layer.properties.Type;
            if (photoDesc.style.display === 'none') {
                photoDesc.style.display = "block";
              } else {
              } 
            document.getElementById("type").innerHTML = "TYPE : " + (e.layer.feature.properties.Type).toUpperCase();
            document.getElementById("desc").innerHTML = "<b>MY STORY : </b>" + e.layer.feature.properties.description;
            document.getElementById("photo").src = e.layer.feature.properties.image1;
            removeBanner();
    });
0
YannieB 20 nov. 2020 à 19:24