【发布时间】:2018-04-11 12:32:19
【问题描述】:
我无法将一些Google Places API data types 添加到信息窗口中,当用户点击地图上的标记时,该信息窗口将显示数据。我已经包含了以下数据类型place.name、place.rating、place.vacinity,这些数据类型将成功地在信息窗口中显示企业的名称、评级和地址。但是,当我尝试添加 place.url 以返回“此地点的官方 Google 页面的 URL”时,它会返回 undefined。如果我通过 Google 搜索这些机构,它们就有 URL,所以我知道有 URL,但是由于某种原因它无法访问它们?
这是创建标记并将信息窗口添加到单击时将调用的侦听器的 Javascript 代码 sn-p。
function createMarker(place) {
infowindow = new google.maps.InfoWindow();
var placeLoc = place.geometry.location;
var reportmarker = new google.maps.Marker({
map: map,
position: place.geometry.location
});
markers.push(reportmarker);
google.maps.event.addListener(reportmarker, 'click', function() {
infowindow.setContent("<p>" + place.name + "<br />" + place.rating + "<br />" + place.vicinity + "<br />" + place.url+ "<br />" +"</p>");
infowindow.open(map, this);
});
}
【问题讨论】:
-
对我来说很好用。
-
正如您使用上面的代码,
place.url返回一个工作 URL? -
是的,效果很好。
-
place来自哪里?你怎么称呼createMarker?请提供一个 minimal reproducible example 来证明您的问题。 -
@Hikarunomemory 你知道为什么你的有效而我的无效吗?
标签: javascript google-maps-api-3 google-places-api