Как вставить текст новой строки во всплывающем окне

9

Я использую Leaflet Marker Cluster и мне нужно показать пять разных строк во всплывающем окне. Но когда я пишу это, они все в одной строке. Может ли кто-нибудь помочь мне быть один под другим?

var a = addressPoints[i];
            var title = a[2];
            var univ = a[3];
            var direct = a[4];
            var city = a[5];
            var state = a[6];
            var marker = new L.Marker(new L.LatLng(a[0], a[1]), { title: title } );
            marker.bindPopup("Student: " + title + "University: " + univ + "Direction: " + direct + "City: " + city + "State: " + state);
            markers.addLayer(marker);
        }

    map.addLayer(markers);
againstflow
источник

Ответы:

17

Как говорится в документации Leaflet , Marker#bindPopupв качестве первого параметра используется строка HTML.

Если вы хотите, чтобы ваши строки появлялись на разных строках, вам нужно добавить правильную разметку HTML. В вашем случае список определений кажется наиболее актуальным.

Следовательно:

var list = "<dl><dt>Student</dt>"
           + "<dd>" + title + "</dd>"
           + "<dt>University</dt>"
           + "<dd>" + univ + "</dd>"
           + 

marker.bindPopup(list);
MattiSG
источник