【问题标题】:Leaflet popup for geojson Ajaxgeojson Ajax 的传单弹出窗口
【发布时间】:2016-03-23 02:00:11
【问题描述】:

使用 Leaflet,当我使用 Ajax 加载 geojson 层时,每个标记上的弹出窗口如何?

var map = L.map('map', {
    center: [44.3, -0.3],
    zoom: 9
 });

var my_layer_geoJson= new L.geoJson();
my_layer_geoJson.addTo(map);

$.ajax({
    dataType: "json",
    url: "geojson/data.php",
    success: function(data) {
        $(data.features).each(function(key, data) {
            my_layer_geoJson.addData(data);
        });
     }
 }).error(function() {});

谢谢!马修

【问题讨论】:

    标签: javascript ajax leaflet


    【解决方案1】:

    我会在收到数据时创建geojson层,就像这样......

    var map = L.map('map', {
        center: [44.3, -0.3],
        zoom: 9
     });
    
    $.ajax({
        dataType: "json",
        url: "geojson/data.php",
        success: function(data) {
                L.geoJson(data, {
                    onEachFeature: onEachFeature
                }).addTo(map);
        }
     }).error(function() {});
    
    
    function onEachFeature(feature, layer) {
       var popupContent = "<p>Hello world</p>";
    
       layer.bindPopup(popupContent);
    }
    

    这是一个工作示例:http://plnkr.co/edit/jQVoO3KTvfCisdpkjFrI?p=preview

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多