为我的标记(Leaflet)添加新行到JSON

时间:2015-01-19 19:45:15

标签: json leaflet

我在地图上放置了标记,当您点击地图上的标记时,我希望我的标记有这样的标记。

FirstLine
SecondLine

我目前有一个markers.json

markers = [
{
    "name": "FirstLine \n SecondLine",
    "lat": 30.1234,
    "lng": -97.2345
    }
];

然而,这对我来说并不起作用,我仍然会从另一条线开始,而不是SecondLine。

我使用Leaflet并且我有一个包含所有数据的markers.json。

编辑:我有一个js文件,它使用弹出窗口生成标记。

for ( var i=0; i < markers.length; ++i ) 
{
   L.marker( [markers[i].lat, markers[i].lng] )
  .bindPopup( '<a target="_blank">' + markers[i].name + '</a>' )
  .addTo( map );
}

2 个答案:

答案 0 :(得分:3)

Leaflet的弹出窗口确实接受HTML <br>换行符,所以如果你先将字符串转换为弹出窗口,那么你应该没问题:

for ( var i=0; i < markers.length; ++i ) {
    var newName = markers[i].name.replace(/(?:\r\n|\r|\n)/g, '<br />');
    L.marker( [markers[i].lat, markers[i].lng] )
        .bindPopup( '<a target="_blank">' + newName + '</a>' )
        .addTo( map );
}

这是关于Plunker的一个工作示例:http://plnkr.co/edit/Qk7aUn?p=preview

答案 1 :(得分:2)

了解如何做到这一点。我意识到你只需添加&lt; br&gt;在生成我的标记时,在js文件中。